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已存储
但是不会分词,没有索引