Lucene03--字段属性

Lucene03--字段属性

1、Field

1.1  Field相当于Javabean的属性。

1.2  不同的Field的构造方法参数不一样:

 

大多数Field的构造函数有三个参数:

a)第一个参数为字段名称

b)第二个参数为存储在字段上的值

c)第三个参数为是否往索引库里存储

1.3  Filed域(字段)的属性

1.3.1是否分词:是否对字段的内容进行分词处理。如果不分词,会把整个字段作为一个词条,除非用户完全匹配,否则搜索不到。

是否分词的依据:这个字段需要被搜索、字段的值不可分割。

应用:身份证号码、订单号、ID

1.3.2 是否索引:将Field分词后的词或整个Filed值进行索引,只有索引方可搜索。

是否索引的依据:这个字段需要被搜索

1.3.3 是否存储:将Field值存储在文档中,存储在文档中的Field才可以从Document中获取。

是否存储的依据:如果一个字段要显示到最终的结果中,那么一定要存储,否则就不存储。

2、根据以上的理解,我们再来查看API

 

StringField:不分词,有索引,手动设置存储

LongPoint:分词,有索引,手动设置存储

StoredField:不分词,没有索引,存储

TextField:分词,有索引,手动设置存储

 

3、代码演示StoredField

3.1 使用StoredField存储,但是不分词,没有索引

 

3.2 luke查看

name已存储

 

但是不会分词,没有索引

 

 

posted on 2019-07-20 15:38  yuanke  阅读(310)  评论(0编辑  收藏  举报