lucene Field有一个构造函数:
Field(String name, String value, Store store, Index index)
例如,我可以通过以下方式创建一个新字段:
Field f1 = new Field("text", "The text content", Field.Store.YES, Field.Index.ANALYZED);
我不太确定第四个参数的含义:Index
如果我将其设置为Index.No
,那么是否需要将这个字段添加为“字段”呢?
因为在我看来,一旦一个属性被声明为字段,它就应该被索引,如果没有那么为什么要把它声明为字段呢?
查询和搜索有什么区别?
存储的字段是当您要求 Lucene 还给你一份文档 http://lucene.apache.org/java/3_0_2/api/all/org/apache/lucene/index/IndexReader.html#document%28int%29。它们保留了一个字段的原始值,没有进行任何分析。您可以使用它们向用户呈现文档(不一定是所有字段)。
未建立索引的存储字段对于存储用户不会用来查询索引的文档的元数据非常有用。例如,文档来自的数据库 ID。用户永远不会使用这个 id,因为他们不知道它,所以索引它通常是没有用的。但是如果您存储它,那么您可以使用它在运行时从数据库收集额外信息。
查询和搜索之间的区别相当主观。对于我自己来说,搜索实际上是在索引中搜索的一般行为,而查询是实际的用于搜索索引的查询字符串 http://lucene.apache.org/java/3_0_2/queryparsersyntax.html.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)