Lucene 是一个本地全文搜索引擎,Solr 和 ElasticSearch 都是基于 Lucene 的封装Lucene 适合那种轻量级的全文搜索,我就是服务器资源不够,假如上 ES 的话会很占用服务器资源,所有就选择了 Lucene 搜索引擎
但是对于中文分词器,我们一般常用第三方分词器IKAnalyzer,需要引入它的POM文件二、最佳实践
- 注意这里有个坑,就是这个indexWriter.close();必须要关闭, 否则在执行其他操纵的时候会有一个write.lock文件锁控制导致操纵失败
- indexWriter.addDocuments(documentList)这是批量添加,单个添加可以使用indexWriter.addDocument()
4、删除文档
- 更新的时候,假如存在就更新那条记录,假如不存在就会新增一条记录
- new Term("id", "2")搜索条件,跟数据库里的where id = 2差不多
- IArticleIndex.INDEX_NAME = article 索引名称
5、删除索引
- 删除文档跟编辑文档类似
a. 在"title", "content", "author"三个字段中搜索关键字"lucene search"的文本数据b. MultiFieldQueryParser 默认使用 OR 运算符将多个字段的查询结果归并,即只要在任意一个字段中匹配乐成即可以使用MultiFieldQueryParser查询来封装一个简单的搜索工具类,这个较为常用
欢迎光临 ToB企服应用市场:ToB评测及商务社交产业平台 (https://dis.qidao123.com/) | Powered by Discuz! X3.4 |