Giả sử thực thể của bạn User
được mô phỏng như
@Document
class User {
String firstName;
String middleName;
String lastName;
String emailId;
}
và muốn có một chỉ mục văn bản dựa trên firstName của nó, Middlename, lastName và EmailId lĩnh vực, định nghĩa chỉ số MongoDB liệu sẽ giống như thế này :
{
firstName: "text",
middleName: "text",
lastName: "text",
emailId: "text"
}
để create a text index trên các lĩnh vực trên, bạn muốn có tìm kiếm văn bản đầy đủ kích hoạt trên, thực hiện như sau
TextIndexDefinition textIndex = new TextIndexDefinitionBuilder()
.onField("firstName")
.onField("middleName")
.onField("lastName")
.onField("emailId")
.build();
MongoTemplate mongoTemplate = new MongoTemplate(new Mongo(), "database"); // obtain MongoTemplate
mongoTemplate.indexOps(User.class).ensureIndex(textIndex);
Hoặc bạn có thể tạo chỉ mục tự động thông qua các chú thích bản đồ:
@Document
class User {
@TextIndexed String firstName;
@TextIndexed String middleName;
@TextIndexed String lastName;
@TextIndexed String emailId;
}