solr + tomcat + mysql整合
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了solr + tomcat + mysql整合,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2876字,纯文字阅读大概需要5分钟。
内容图文
上一次分享了solr+tomcat的整合
学习就是要一步一步的进行才有趣
所以这次给大家分享solr+tomcat+mysql
一、准备工作
1.一张带数据的数据库表(我用的是这张叫merchant的表)
2.导jar包
需要把solr-5.5.4\dist目录下的solr-dataimporthandler-5.5.4.jar复制到tomcat\webapps\solr\WEB-INF\lib
目录下如图
还需要导一个数据库连接的jar包到tomcat\webapps\solr\WEB-INF\lib
3.core配置(core具体创建不描述了虽然会的不多但是还是懒=。=)
默认dataImport功能在Solr5中是禁用的,需要在solrconfig.xml中添加如下配置开启数据导入功能:
< requestHandler name ="/dataimport" class ="solr.DataImportHandler" > < lst name ="defaults" > < str name ="config" >data-config.xml</str></lst></requestHandler>
这个地址可以是绝对路径。
将core中的solr-data-config.xml修改成data-config.xml
需要在里面敲的代码如下
< dataConfig > < dataSource name ="bfy" type ="JdbcDataSource" driver ="com.mysql.jdbc.Driver" url ="jdbc:mysql://39.108.147.253:3306/bfy" user ="root" password ="199610liu" /> < document > < entity pk ="MID" dataSource ="bfy" name ="merchant" query ="select * from merchant" deltaImportQuery ="select * from merchant where id =‘${dih.delta.id}‘" deltaQuery ="select id from merchant where timestamp > ‘${dih.last_index_time}‘" > < field column ="MID" name ="id" /> < field column ="mName" name ="mName" /> < field column ="northernLatitude" name ="northernLatitude" /> < field column ="eastLongitude" name ="eastLongitude" /> </ entity > </ document > </ dataConfig >
这里解释下以上代码
dataSource里边就是我们经常配置的数据源
entity中要注意的就是查询后面的表名要修改
field是你表中的数据可以只选需要的
紧接着我们需要打开schema.xml配置文件对域名称、域类型、是否索引、是否存储、是否分词等信息进行配置,
如图:
< field name ="mName" type ="text_ik" indexed ="true" stored ="true" omitNorms ="true" /> < field name ="MID" type ="int" indexed ="true" stored ="true" /> < field name ="northernLatitude" type ="string" indexed ="true" stored ="true" /> < field name ="eastLongitude" type ="string" indexed ="true" stored ="true" />
可以看见代码中有一个 text_ik 这个值一个分词器
这时我们需要引入ik分词器
这里需要引如下2个jar包到tomcat\webapps\solr\WEB-INF\lib下
< fieldType name ="text_ik" class ="solr.TextField" > < analyzer type ="index" isMaxWordLength ="false" class ="org.wltea.analyzer.lucene.IKAnalyzer" /> < analyzer type ="query" isMaxWordLength ="true" class ="org.wltea.analyzer.lucene.IKAnalyzer" /> </ fieldType >
这样连接数据库的配置都配好了
再去启动tomcat进入http://localhost:8000/solr/admin.html#/ 进入如下位置可以见到效果
页面上的内容介绍
full-import:全量导入,它会覆盖原有的索引
delta-import:即增量导入,它会在原有索引的基础上追加
下面的几个多选框含义解释如下:
verbose:这个选项设为true的话,会打印导入的一些中间过程的详细信息,有利于调试以及了解内部操作细节
clean:表示是否在导入数据创建索引之前先清空掉原有的索引
commit:表示是否立即提交索引
optimize:表示是否优化索引
debug: 表示是否开启调试模式
选中merchant后点蓝色的那个按钮
上面的页面是正在创建索引,但是这个页面不会停太久如果很久没有反应就去tomcat那边看是否有报错日志
成功的话会有如下界面
切换到overview菜单,我们会看到:
Num Docs会有数据
切换到Query菜单,对我们刚插入的索引进行查询测试,如图:
numFound是找到的数据条数
附上我使用的ik分词器下载链接 https://pan.baidu.com/s/1amtFlufyTEzMLcSnbOr7vA
这里整合就结束了
如果有不足和错误的地方还请各位大佬指点
谢谢!!!
2018-09-20 17:35:52
原文:https://www.cnblogs.com/-ccj/p/9682229.html
内容总结
以上是互联网集市为您收集整理的solr + tomcat + mysql整合全部内容,希望文章能够帮你解决solr + tomcat + mysql整合所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。