繁体   English   中英

如何索引spring数据mongodb中的所有字段?

[英]How to index on all fields in spring data mongodb?

假设我有一些名为候选人的集合。 我想在这个集合中的所有字段上创建一个text索引。 在 mongo 中,我知道我可以这样做

db.candidates.createIndex({"$**":"text"},{name:"TextIndex"}) 

这是我的 java pojo 或实体。

@Document(collection = "candidates")
public class Candidate {

    @Id
    private String id;
    private String firstName;
    private String lastName;

   // Other stuff: removed for brevity
}

现在我该怎么做db.candidates.createIndex({"$**":"text"},{name:"TextIndex"})在java中? 那就是我如何索引整个 pojo 或者如何索引我的集合中的所有字段?

这个问题试图做同样的事情,但它没有完整的细节。

我还查看了@Indexed注释,但是我如何使用它来索引整个集合,因为它只能应用于一个字段?

使用@TextIndexed,您至少可以索引要包含在索引中的所有字段。 https://docs.spring.io/spring-data/mongodb/docs/current/api/org/springframework/data/mongodb/core/index/TextIndexed.html

或者,您可以为此使用 mongotemplate。 如何使用 Spring-Data-MongoDB 在实体中设置 @TextIndex 名称

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM