lucene常见Field
IntField | 主要对int类型的字段进行存储,需要注意的是如果需要对InfField进行排序使用SortField.Type.INT来比较,如果进范围查询或过滤,需要采用NumericRangeQuery.newIntRange() |
---|---|
LongField | 主要处理Long类型的字段的存储,排序使用SortField.Type.Long,如果进行范围查询或过滤利用NumericRangeQuery.newLongRange(),LongField常用来进行时间戳的排序,保存System.currentTimeMillions() |
FloatField | 对Float类型的字段进行存储,排序采用SortField.Type.Float,范围查询采用NumericRangeQuery.newFloatRange() |
BinaryDocVluesField | 只存储不共享值,如果需要共享值可以用SortedDocValuesField |
NumericDocValuesField | 用于数值类型的Field的排序(预排序),需要在要排序的field后添加一个同名的NumericDocValuesField |
SortedDocValuesField | 用于String类型的Field的排序,需要在StringField后添加同名的SortedDocValuesField |
StringField | 用户String类型的字段的存储,StringField是只索引不分词 |
TextField | 对String类型的字段进行存储,TextField和StringField的不同是TextField既索引又分词 |
StoredField | 存储Field的值,可以用IndexSearcher.doc和IndexReader.document来获取此Field和存储的值 |
http://blog.csdn.net/wuyinggui10000/article/details/45538155
善于将复杂问题简单化