当前位置: 首页 > 知识库问答 >
问题:

compass-lucene中的索引枚举

扈昀
2023-03-14

我正在使用Compass从DTO对象中过滤数据。如果字段是POJO对象,则使用@SearchableComponent标记字段;如果字段是字符串,则使用SearchableProperty标记字段。这非常有效:我将对象和字符串编入索引。

我的问题是如何注释枚举数据类型?

我拥有的枚举示例:

public enum FooBar {
    FOO("foo"),
    BAR("bar");
    private final String value;

    ..(constructor)..

    public String value() {
        return value;
    }
}

在这个片段中,我应该在哪里放置注释,应该放置哪个注释?

共有1个答案

宣煜
2023-03-14

从2.1版开始,使用@SearchableProperty注释对该枚举类型的字段进行开箱即用。

    @SearchableProperty    
    FooBar foobar;

搜索使用枚举名称作为返回的筛选类型。处理这个问题上的有价值的事情是在用名字进行搜索之后处理的。

请参见Compass 2.1.0的发行说明。

 类似资料:
  • 在测试此文本时,我在要在文本中搜索的列上创建了lucene(3.0.1)索引: 如果我按关键字搜索,它会给出结果,但按 我正在使用standardAnalyzer: 因为已设置,它应创建令牌,并且应存在$GLD。Analyzer将从文本中删除停止字,因为word也将在该过程中删除。

  • bugu-mongo 2.x版本集成了Lucene的功能。当往MongoDB中新增一个Document时,能自动为该Document建立Lucene索引。相应的,当MongoDB中的Document被修改、删除时,对应的Lucene索引也会修改、删除。 另外,bugu-mongo还提供了对Lucene搜索的支持。根据Lucene索引进行搜索的时候,搜索结果能自动转换成对应的Entity对象。 在L

  • 问题内容: 在不使索引离线的情况下备份Lucene索引的最佳实践是什么(热备份)? 问题答案: 您不必停止IndexWriter即可备份索引。 只需使用SnapshotDeletionPolicy,它就可以“保护”给定的提交点(及其包含的所有文件),以免被删除。然后,将该提交点中的文件复制到您的备份中,最后释放该提交。 如果备份需要一段时间才能运行,这很好- 只要您不使用SnapshotDelet

  • 假设我有两组对象“Questions”和“Users”,它们共享一个关系。 什么是最好的方法索引我的对象,以允许最新的变化反映在lucene IDEX? 是否应该为用户和问题提供单独的文档,并让lucene根据需要获取所需的问题/用户详细信息? 还是,走数据传输对象的方式?当发生更改时,只需删除这些文档并重新索引?

  • 我已经通过了lucene索引机制。我有一些疑问,我找不到一个直截了当的答案,我仍然对我在几篇参考文献中的阅读感到困惑。 考虑使用Lucene对数据库表进行索引。 假设该表有10列,其中很少有caseid、modifiedby、modifiedtime、casename、legalname等。。。 现在,如果我创建一个索引的情况下,那么在搜索是不是可以搜索的基础上修改字段??? 假设我在2列case