es里的document的"_id"和org.apache.lucene.search.ScoreDoc.doc是什么关系

回复

liuliuliu 发起了问题 • 1 人关注 • 0 个回复 • 119 次浏览 • 2019-05-21 10:01 • 来自相关话题

修改Lucene源码

ES1314 回复了问题 • 2 人关注 • 1 个回复 • 216 次浏览 • 2019-05-17 09:18 • 来自相关话题

lucence如何进行分页

rochy 回复了问题 • 2 人关注 • 1 个回复 • 281 次浏览 • 2019-03-05 09:23 • 来自相关话题

lucence构建索引几分钟后报错

回复

lvwendong 发起了问题 • 1 人关注 • 0 个回复 • 288 次浏览 • 2019-03-01 16:43 • 来自相关话题

lucene倒排索引关于数据压缩的问题

zqc0512 回复了问题 • 5 人关注 • 3 个回复 • 743 次浏览 • 2018-09-17 09:02 • 来自相关话题

Lucene用LongPoint或者StringField或者IntPoint做主键,哪个效率更高?

回复

codepub 发起了问题 • 1 人关注 • 0 个回复 • 541 次浏览 • 2018-04-23 17:00 • 来自相关话题

一个简单的Lucene工具类,通过注释的方式来配置构建索引的字段。提供新建索引、查找、删除、更新方法,支持分页。

pengshaojie 发表了文章 • 6 个评论 • 1003 次浏览 • 2018-02-12 10:23 • 来自相关话题

代码地址:https://gitee.com/shaojiepeng/wsm-lucene
 ### wsm-lucene
一个简单的Lucene工具类,通过注释的方式来配置构建索引的字段。提供新建索引、查找、删除、更新方法,支持分页。

### 所需jar包
1. lucene-core:2.4.0
2. lucene-analyzers:2.4.1
3. commons-logging:1.2

### 背景
以前在做某个feature的时候,鉴于存储在DB中的数据量过大,故使用Lucene来优化查找性能。
相信大家在某些场景下会把DB中的数据读出来,建索引来优化查找。那么这个工具类就比较适合这些场景了。

### 如何使用
 **从附件中下载jar包直接导入到项目中,或者下载此Maven项目的源码,使用项目依赖的方式导入你的项目。** 

1. 通过注释的方式配置需要构建索引的model类

```
 **@IndexClass** :注释,说明此model类需要构建索引
 **indexDirPath** :索引所存放的物理位置,如:"D:/Index"

 **@IndexField** :注释,说明此字段需要构建索引
 **fieldStore** :Lucene中的Field.Store同义,不懂请自行查询资料
 **fieldIndex** :Lucene中的Field.Index同义,不懂请自行查询资料
```

173117_4fa2ac08_980808.png



2. 创建索引
```

IndexService indexService = new IndexServiceImpl();
/** 构建索引的接口
 * List:model的集合
 * Class: model的class
 *
 * return boolean
**/
indexService.buildIndex(List, Class)
```

173148_bb488cf0_980808.png



3.查找
```
ArrayList<SearchParamModel> searchParams = new ArrayList<>();
/**添加查询的条件,如果有多个查询条件,则添加SearchParamModel
 * fieldName:需要查找的字段,即model中的成员变量
 * fieldValue:需要查找字段的值,这个不解释
 * BooleanType:Lucene中BooleanClause.Occur值,不懂请自行查询资料
**/
searchParams.add(new SearchParamModel(fieldName, fieldValue, BooleanType));
IndexService indexService = new IndexServiceImpl();
/** 查询的接口
 * searchParams:不解释
 * Class: model的class
 *
 * return model的集合
**/
List objs = indexService.search(searchParams, Class);
```

173219_367ef1d0_980808.png




IndexService中还支持update, delete和分页查找的方法,请自行查阅代码。


觉得不错,请点个赞吧。

倒排索引删除文档

回复

temp150 发起了问题 • 1 人关注 • 0 个回复 • 896 次浏览 • 2017-12-24 16:09 • 来自相关话题

Lucene如何实现SpanAndQuery,即SpanTermQuery与逻辑?

回复

codepub 发起了问题 • 1 人关注 • 0 个回复 • 853 次浏览 • 2017-12-05 11:15 • 来自相关话题

我有个问题,如何用lucene语法去重呀

rockybean 回复了问题 • 2 人关注 • 1 个回复 • 2677 次浏览 • 2017-12-01 18:41 • 来自相关话题

lucene count奇怪的问题

回复

codepub 发起了问题 • 1 人关注 • 0 个回复 • 911 次浏览 • 2017-11-30 20:46 • 来自相关话题

Lucene使用GroupingSearch分组和用FirstPassGroupingCollector、SecondPassGroupingCollector分组有什么区别?

回复

codepub 发起了问题 • 1 人关注 • 0 个回复 • 835 次浏览 • 2017-11-15 11:47 • 来自相关话题

Lucene中如何获取一个字段中所有term的tf最大的那个值

回复

kittenll 发起了问题 • 1 人关注 • 0 个回复 • 2666 次浏览 • 2017-09-06 17:04 • 来自相关话题

luece 6.4 归并倒排链表时支持倒排链表截断吗,在哪设置,还有倒排链表只能按照id排序吗

回复

cat 回复了问题 • 1 人关注 • 1 个回复 • 3765 次浏览 • 2017-06-01 16:05 • 来自相关话题

2017年学习内容

guoshuangjiang 发表了文章 • 4 个评论 • 2727 次浏览 • 2017-01-05 18:05 • 来自相关话题

  • 重新看lucene源码
  • 看es源码
  • 对比lucene和es
  • 基于lucene实现自己的搜索框架

  • 重新看lucene源码
  • 看es源码
  • 对比lucene和es
  • 基于lucene实现自己的搜索框架