Java Lucene:如何从索引中获取LongField
我在索引中添加了一个LongField 方法Java Lucene:如何从索引中获取LongField,java,lucene,search-engine,Java,Lucene,Search Engine,我在索引中添加了一个LongField 方法 IndexSearcher.doc() 返回一个文档,其中所有字段 org.apache.lucene.document.Field或org.apache.lucene.document.StoredField 如何从索引中获取与输入的字段类型相同的文档。因此,我将此文档复制到另一个具有相同字段类型的索引中。最后,我找到了另一个方法indexsearch.doc(int,StoredFieldVisitor)(我使用的是lucene 4.3) 并
IndexSearcher.doc()
返回一个文档,其中所有字段
org.apache.lucene.document.Field或org.apache.lucene.document.StoredField
如何从索引中获取与输入的字段类型相同的文档。因此,我将此文档复制到另一个具有相同字段类型的索引中。最后,我找到了另一个方法
indexsearch.doc(int,StoredFieldVisitor)
(我使用的是lucene 4.3)
并创建一个自定义StoredFieldVisitor
}最后,我找到了另一个方法
indexsearch.doc(int,StoredFieldVisitor)
(我使用的是lucene 4.3)
并创建一个自定义StoredFieldVisitor
}
public class StaySameFieldVisitor extends DocumentStoredFieldVisitor {
@Override
public void intField(FieldInfo fieldInfo, int value) {
getDocument().add(new IntField(fieldInfo.name, value, Store.YES));
}
@Override
public void longField(FieldInfo fieldInfo, long value) {
getDocument().add(new LongField(fieldInfo.name, value, Store.YES));
}
@Override
public void doubleField(FieldInfo fieldInfo, double value) {
getDocument().add(new DoubleField(fieldInfo.name, value, Store.YES));
}
@Override
public void floatField(FieldInfo fieldInfo, float value) {
getDocument().add(new FloatField(fieldInfo.name, value, Store.YES));
}