±à¼ÍƼö: |
±¾ÎÄÖ÷Òª½éÉÜÁËʲôÊÇsolr,ÈçºÎʹÓÃLuceneµÄ°¸ÁжÔsolrËÑË÷ÒýÇæ½øÐÐÏêϸµÄ´î½¨£¬Ï£Íû±¾ÎĶÔÄúµÄѧϰÓÐËù°ïÖú¡£
±¾ÎÄÀ´×Ô²©¿ÍÔ°£¬ÓÉ»ðÁú¹ûÈí¼þAlice±à¼¡¢ÍƼö¡£ |
|
1¡¢Ê²Ã´ÊÇsolr
Solr ÊÇApacheϵÄÒ»¸ö¶¥¼¶¿ªÔ´ÏîÄ¿£¬²ÉÓÃJava¿ª·¢£¬ËüÊÇ»ùÓÚLuceneµÄÈ«ÎÄËÑË÷·þÎñÆ÷¡£Solr¿ÉÒÔ¶ÀÁ¢ÔËÐÐÔÚJetty¡¢TomcatµÈÕâЩServletÈÝÆ÷ÖС£
SolrÌṩÁ˱ÈLucene¸üΪ·á¸»µÄ²éѯÓïÑÔ£¬Í¬Ê±ÊµÏÖÁË¿ÉÅäÖᢿÉÀ©Õ¹£¬²¢¶ÔË÷Òý¡¢ËÑË÷ÐÔÄܽøÐÐÁËÓÅ»¯¡£
ʹÓÃSolr ½øÐд´½¨Ë÷ÒýºÍËÑË÷Ë÷ÒýµÄʵÏÖ·½·¨ºÜ¼òµ¥£¬ÈçÏ£º
* ´´½¨Ë÷Òý£º¿Í»§¶Ë£¨¿ÉÒÔÊÇä¯ÀÀÆ÷¿ÉÒÔÊÇJava³ÌÐò£©Óà POST ·½·¨Ïò Solr ·þÎñÆ÷·¢ËÍÒ»¸öÃèÊö
Field ¼°ÆäÄÚÈÝµÄ XML Îĵµ£¬Solr·þÎñÆ÷¸ù¾ÝxmlÎĵµÌí¼Ó¡¢É¾³ý¡¢¸üÐÂË÷Òý ¡£
* ËÑË÷Ë÷Òý£º¿Í»§¶Ë£¨¿ÉÒÔÊÇä¯ÀÀÆ÷¿ÉÒÔÊÇJava³ÌÐò£©Óà GET·½·¨Ïò Solr ·þÎñÆ÷·¢ËÍÇëÇó£¬È»ºó¶ÔSolr·þÎñÆ÷·µ»ØXml¡¢jsonµÈ¸ñʽµÄ²éѯ½á¹û½øÐнâÎö£¬×éÖ¯Ò³Ãæ²¼¾Ö¡£Solr²»Ìṩ¹¹½¨Ò³ÃæUIµÄ¹¦ÄÜ£¬µ«ÊÇ
ÌṩÁËÒ»¸ö¹ÜÀí½çÃæ£¬Í¨¹ý¹ÜÀí½çÃæ¿ÉÒÔ²éѯSolrµÄÅäÖúÍÔËÐÐÇé¿ö¡£
¼òµ¥À´Ëµ£ºSolrÀàËÆÎÒÃÇ¿ª·¢µÄwebÏîÄ¿£¬ÊÇÒ»¸öwar°ü£¬°ÑËü·ÅÔÚtomcatÏÂÖ±½ÓÔËÐоͺÃ
2¡¢SolrºÍLuceneµÄÇø±ð
LuceneÊÇÒ»¸ö¿ª·ÅÔ´´úÂëµÄÈ«ÎļìË÷ÒýÇæ¹¤¾ß°ü£¬Ëü²»ÊÇÒ»¸öÍêÕûµÄÈ«ÎļìË÷Ó¦Óá£Lucene½öÌṩÁËÍêÕûµÄ²éѯÒýÇæºÍË÷ÒýÒýÇæ£¬Ä¿µÄÊÇΪÈí¼þ¿ª·¢ÈËÔ±Ìṩһ¸ö¼òµ¥Ò×ÓõŤ¾ß°ü£¬ÒÔ·½±ãµÄÔÚÄ¿±êϵͳÖÐʵÏÖÈ«ÎļìË÷µÄ¹¦ÄÜ£¬»òÕßÒÔLuceneΪ»ù´¡¹¹½¨È«ÎļìË÷Ó¦Óá£
SolrµÄÄ¿±êÊÇ´òÔìÒ»¿îÆóÒµ¼¶µÄËÑË÷ÒýÇæÏµÍ³£¬ËüÊÇ»ùÓÚLuceneÒ»¸öËÑË÷ÒýÇæ·þÎñ£¬¿ÉÒÔ¶ÀÁ¢ÔËÐУ¬Í¨¹ýSolr¿ÉÒԷdz£¿ìËٵĹ¹½¨ÆóÒµµÄËÑË÷ÒýÇæ£¬Í¨¹ýSolrÒ²¿ÉÒÔ¸ßЧµÄÍê³ÉÕ¾ÄÚËÑË÷¹¦ÄÜ¡£
¼òµ¥À´Ëµ£ºÈç¹û²»ÖªµÀLucene£¬ÄÇôÅäÖÃSolr·½Ã潫´ç²½ÄÑÐÐ
ÓÐÒ»¸öÎÊÌ⣺ÎÒÃÇ¿ÉÒÔʹÓÃÊý¾Ý¿â²éѯ£¬ÎªÊ²Ã´ÒªÓÃSolrÄØ£¿
´ð°¸£º×î´óµÄÒ»¸öÔÒòÊÇЧÂÊ»á¸ß ºÜ ¶à £¬»¹ÓÐÆäËûÔÒò£¬±ÈÈçSQLÎÞ·¨×öµ½Ïà¹Ø¶ÈÅÅÐòµÈµÈ
ÁíÒ»¸öÎÊÌ⣺ÎÒÃÇΪʲô²»ÓÃLuceneÄØ£¿
´ð°¸£ºLuceneµÄ¹¤×÷Á¿¹ý´ó£¬SolrÊÇ»ùÓÚLuceneµÄ¿ò¼Ü£¬±ã½ÝÍêÉÆ£¬¿ÉÅäÖÿÉÀ©Õ¹£¬¿ÉÒÔ¸ßЧÍê³ÉÕ¾ÄÚËÑË÷¹¦ÄÜ
½ÓÏÂÀ´¾Í¿ªÊ¼£º
´î½¨solr·þÎñÆ÷£¨Tomcat£©£º
×¢Ò⣺solr±¾Éí¿ÉÒÔÔËÐУ¬²»¹ýËüÊÇÔËÐÐÔÚjettyÉϵģ¬Ïà±ÈTomcatÏԵò»Îȶ¨£¬ËùÒÔÎÒÃÇÒªÔÚtomcatÖдSolr
×¼±¸Ò»¸öTomcat7ºÍSolr4.10.3£ºÍøÉÏÏÂÔØ¼´¿É

°´Õâ¸ö·¾¶ÕÒµ½solr.war¸´ÖƵ½TomcatµÄwebappÏÂ

È»ºó°ÑÕâ¸öwar°ü½âѹÁË£º×¢Òâ½âѹºó°Ñwar°üɾÁË£¬ÒòΪsolrÎļþ¼ÐÀïÒªÌí¼ÓÆäËû¶«Î÷£¬µ«ÊÇTomcatÿ´ÎÆô¶¯¶¼»á½âѹwar°ü¸²¸Ç£¬ËùÒÔÐèҪɾÁËwar°ü

°´Ä¿Â¼ÕÒµ½Õâ5¸ö°ü£º

°ÑËüÃǸ´ÖƵ½Õâ¸öÎļþ¼ÐÖУº

½ÓÏÂÀ´£ºÔڸղŵÄÎļþ¼ÐÏÂн¨Ò»¸öÎļþ¼Ð£ºsolrhome(³äµ±Ë÷Òý¿â)
°ÑÕâ¸ö·¾¶µÄÕâЩ¶«Î÷¸´ÖƹýÈ¥£º


È»ºóÐÞ¸ÄÏÂÕâ¸öÅäÖÃÎļþ£º

ÔÚ40Ðд¦ÐÞ¸ÄÈçÏ£º

ºÃµÄ£¬Æô¶¯Tomcat:

ÎÒ·ÃÎÊ8080£º

µ½ÕâÀ´î½¨¾Í³É¹¦ÁË£¡

ÔÚÕâ¸öÒ³Ãæ¾Í¿ÉÒÔÔöɾ¸Ä²éË÷ÒýÁË£¡
±ÈÈçÔö£¨×¢Òâ±ØÐëÓÐid£©£º

²é£º

µ«ÊÇ»¹Ã»ÓнáÊø£º
½ÓÏÂÀ´ÐÞ¸ÄÅäÖÃÎļþ£º
´ò¿ªÕâÀÎÒÃÇÐèÒª¹Ø×¢µÄÊÇÕâÁ½¸öÅäÖÃÎļþ

ºÃµÄ£¬½ÓÏÂÀ´¾ÍÅäÖÃËüÃÇ£º
schema.xml£ºÅäÖÃÓòÏà¹ØµÄÐÅÏ¢
¿ÉÒÔ´ò¿ª¿´¿´£¬ÀïÃæÊÇÓòµÄÏà¹ØÐÅÏ¢£¬Ö»ÓÐÀïÃæ´æÔÚµÄÓò²Å¿ÉÒÔʹÓã¡
µ±È»£¬ÀïÃæ»¹ÓÐÒ»ÖÖ¶¯Ì¬Óò£¬±ÈÈç*_s£¬*_iµÈµÈ£¬Ç°×º¿ÉÒÔÈÎÒâд

¿´¿´ÁíÒ»¸öÅäÖÃÎļþ£º
ÕâÀïÒªÅäÖÃÖÐÎÄ·Ö´ÊÆ÷
Ïȵ¼ÈëÕâ¸ö°ü£º

н¨Ò»¸öÎļþ¼Ð·ÅÈëIK·ÖÎöÆ÷ÅäÖÃÎļþ£º

×¢ÒâÈý¸öÎļþµÄ¸ñʽ£ºUTF-8ÎÞBOM¸ñʽ±à¼
½ÓÏÂÀ´£ºÔÚ¸Õ²ÅÌáµ½µÄschema.xmlÖÐÅäÖ㺼ÓÉÏÕâÒ»¶Î
<fieldType
name="text_ik" class="solr.TextField">
<analyzer class="org.wltea.analyzer.lucene.IKAnalyzer"/>
</fieldType>
<field name="title_ik" type="text_ik"
indexed="true" stored="true"/>
<field name="content_ik" type="text_ik"
indexed="true" stored="false" multiValued="true"/> |
н¨µÄÕâÁ½¸öÓòÖ§³ÖIK·ÖÎöÆ÷
²âÊÔÏ£ºÖØÆôTomcat

·ÖÎö³É¹¦£¡
½ÓÏÂÀ´£¬½éÉÜÏÂÈçºÎ´ÓÊý¾Ý¿âµ¼ÈëÊý¾Ý£º
Ê×ÏÈ£¬µ¼Èë°ü£¨×¢ÒâλÖã©£º

´ò¿ªÉÏÃæÌáµ½¹ýµÄsolrconfig.xmlÅäÖÃÎļþ£º
¼ÓÈëÏÂÃæÕâЩ´úÂ룺
<requestHandler
name="/dataimport" class="org.apache.solr.handler.dataimport.Data ImportHandler">
<lst name="defaults">
<str name="config">data-config.xml</str>
</lst>
</requestHandler> |
ÔÚµ±Ç°Ä¿Â¼ÏÂн¨Ò»¸ödata-config.xml:
ÕâÀïµ¼ÈëÒÔǰÎÒ×öµÄBBSÏîÄ¿ÖÐÓû§µÄ±í
<?xml version="1.0"
encoding="UTF-8" ?>
<dataConfig> <dataSource type="JdbcDataSource"
driver="com.mysql.jdbc.Driver"
url="jdbc:mysql://localhost:3306/Blog"
user="root" password="xuyiqing"/>
<document> <entity name="user"
query="select * from blog_user" >
<field column="u_id" name="id"></field>
<field column="username" name="username"></field>
<field column="u_password" name="password"></field>
<field column="qq" name="qq"></field>
<field column="avatar" name="avatar"></field>
<field column="article_count" name="count"></field>
</entity> </document> </dataConfig> |
ֻдÕâЩ²»¹»µÄ£¬»¹ÒªÔÚschema.xmlÖÐÅäÖÃÓò£º
<field
name="username" type="text_ik"
indexed="true" stored="true"/>
<field name="password" type="text_ik"
indexed="false" stored="false"/>
<field name="qq" type="text_ik"
indexed="true" stored="true"/>
<field name="avatar" type="string"
indexed="false" stored="true"/>
<field name="count" type="float"
indexed="true" stored="true"/> |
±£´æ£¡ÖØÆôtomcat

µ¼Èë³É¹¦£¡
ÎÒÃDzéѯһÏ£¨³É¹¦£©£º

¿ÉÒÔ°´Ìõ¼þ²éѯ£º

µ½ÕâÀï´î½¨Solr¾Í³É¹¦ÁË
SolrJ£ºÍ¨¹ýSorlJµÄAPI²Ù×÷Solr
|