solr全文檢索隨筆
solr的專案配置步驟
(1)在F:\fullsearch\solr\apache-tomcat-8.0.52\webapps\solr\WEB-INF中的web.xml 修改指向solrhome路徑
<env-entry>
<env-entry-name>solr/home</env-entry-name>
<env-entry-value>F:\fullsearch\solr\solrhome</env-entry-value>
<env-entry-type>java.lang.String</env-entry-type>
</env-entry>
(2)修改資料庫配置 在F:\fullsearch\solr\solrhome\collection1\conf的data-config.xml
(3)執行solr.sql指令碼
(4)在javaweb專案中的springmvc.xml中配置,類似引用solr服務
<!-- 配置SolrJ -->
<bean id="solrServer" class="org.apache.solr.client.solrj.impl.HttpSolrServer">
<constructor-arg value="http://localhost:8080/solr/collection1"/>
</bean>
(5)啟動tomcat下面的solr服務,在啟動jabaweb的服務,就可以連線。
(6)在F:\fullsearch\solr\apache-tomcat-8.0.52\webapps\solr\WEB-INF\classes的ext.dic中新增粉刺需要,比如不加這個 金服只能被分為 金 服 ,加了金服2個字,可以分為 金服 金 服
solr新增登入名和密碼步驟
在tomcat檔案中找到tomcat-users.xml新增
<role rolename="solr"/>
<user username="admin" password="admin" roles="solr"/> //使用者名稱和密碼
在solr的web.xml檔案中新增
<security-constraint>
<web-resource-collection>
<web-resource-name>Solr Lockdown</web-resource-name>
<url-pattern>/</url-pattern>
<http-method>GET</http-method>
<http-method>POST</http-method>
</web-resource-collection>
<auth-constraint>
<description>This applies only to the "tomcat" security role</description>
<role-name>solr</role-name>
<role-name>admin</role-name>
</auth-constraint>
<user-data-constraint>
<transport-guarantee>NONE</transport-guarantee>
</user-data-constraint>
</security-constraint>
<login-config>
<auth-method>BASIC</auth-method>
<realm-name>Solr</realm-name>
</login-config>
到這一步訪問http://localhost:8080/solr 就會提醒輸入密碼
在java程式碼中 applicationContext-solr.xml
<solr:solr-server id ="solrServer" url="http://admin:admin@localhost:8080/solr/collection1"/> //使用者名稱:密碼
<bean id="solrTemplate" class="org.springframework.data.solr.core.SolrTemplate">
<constructor-arg ref ="solrServer"/>
</bean>
參考url https://blog.csdn.net/kevon_sun/article/details/80711547