Solr全文检索
1.Solr的安装
1.环境要求 jdk1.7+tomcat8+solr5.5.0 2.将以上的软件包上传到服务器 3. 安装tomcat8(解压文件) tar -zxvf apache-tomcat-8.5.24.tar.gz 4. 解压solr tar -zxvf solr-5.5.0.tgz 1.将solr的服务拷贝到tomcat的webapps下 cp -r solr-5.5.0/server/solr-webapp/webapp/* tomcat8/webapps/solr 2.需要将solr需要日志的jar拷贝到tomcat8/webapp/solr/WEB-INF/lib cp -r solr-5.5.0/server/lib/ext/*.jar tomcat8/webapps/solr/WEB-INF/lib 3.需要将日志的log4j配置文件拷贝到项目中 mkdir -p tomcat8/webapps/solr/WEB-INF/classes cp -r solr-5.5.0/server/resource/log4j.properties tomcat8/webapps/WEB-INF/classes 4.配置solrHome(存放索引) mkdir solr-home vi tomcat8/webapps/solr/WEB-INF/web.xml 打开如下配置 <env-entry> <env-entry-name>solr/home</env-entry-name> <env-entry-value>/put/your/solr/solr-home</env-entry-value> <env-entry-type>java.lang.String</env-entry-type> </env-entry> 拷贝solr的配置文件到solr-home cp -r solr-5.5.0/server/solr/* /root/solr/solr-home 5.启动tomcat tomcat8/bin/startup.sh 6.http://192.168.137.129:8080/solr/admin.html
2.核心概念
1.Solr服务器—->理解为数据库
2.核—->表
3.field—->表中字段
3.创建核
1.在solr-home下创建一个目录(目录名随意,例如t_item)
2.拷贝核中所需要的配置文件(solr-home下configsets里面) : cp -r configsets/sample-techproducts-configs/* t_item
4.系统界面操作
1.新增和修改(id在索引库中存在就是修改,不存在就是新增): {“id”:”change.me”,”title”:”change.me”}
id必须存在,可以理解为主键,key必须先配置(managed-schema)再使用
2.删除使用xml
<delete>
<id>change.me</id>
</delete>
<commit/>
5.Java中操作Solr
1.添加依赖 <dependency> <groupId>org.apache.solr</groupId> <artifactId>solr-solrj</artifactId> <version>5.5.0</version> </dependency> 2.使用API 1.获取和服务器连接 String baseURL = "http://192.168.137.129:8080/solr/t_item"; //服务器地址,最后一个表示核 SolrClient solrClient = new HttpSolrClient(baseURL); 2.调用 solrClient中的增删改查操作
6.Solr添加域
1.需要在solr-home,找到对应的核的目录,conf/managed-schema vi conf/managed-schema <!--配置自定义的域--> <field name="content_ik" type="text_ik" indexed="true" stored="true"/> <fieldType name="text_ik" class="solr.TextField"> <analyzer class="org.wltea.analyzer.lucene.IKAnalyzer"></analyzer> </fieldType> 2.将IK分词器拷贝到tomcat8/webapps/solr/WEB-INF/lib cp ik-analyzer-5.3.0.jar tomcat8/webapps/solr/WEB-INF/lib 3.重启服务器 IK分词器需要添加扩展词典 将配置文件IKAnalyzer.cfg.xml和词典上到 tomcat8/webapps/solr/WEB-INF/classes