【问题标题】:Lucene - not unique name for Fields in Lucene DocumentLucene - Lucene 文档中的字段不是唯一名称
【发布时间】:2013-02-01 02:16:19
【问题描述】:

我在我正在处理的代码库中发现,在创建 lucene Document 时,相同的字段名称多次用于不同的值(术语)。

 doc.add(new Field("sameName", value1, store, index));
 doc.add(new Field("sameName", value2, store, index));
 ...
 doc.add(new Field("sameName", value3, store, index));

正确吗?有什么用?

然后在搜索时使用此字段的名称:

     QueryParser parser = new QueryParser(Version.LUCENE_40, "sameName", new StandardAnalyzer(
            Version.LUCENE_40));

在搜索过程中似乎只使用了“sameName”字段,尽管文档中有许多其他字段。对我来说很奇怪。有意义吗?

【问题讨论】:

标签: java lucene


【解决方案1】:

一个字段可以被多个值索引。例如,您可以有一个“内容字段,其中包含文档中的所有单词以及诸如作者或标签之类的元数据。

关于您的搜索问题,根据您初始化 QueryParse 的字段(在本例中为“sameName”),这将是唯一搜索的字段。您当然可以向 QueryParser 添加多个字段。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-03-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多