如何在 Morphia Java 中制作索引和不同的唯一索引?

how to make indexes and different unique indexes in Morphia Java?

使用吗啡,mongoDB 和 JAVA 8,我试图在我的实体上创建一些索引,并且 一些其他唯一索引 在不同的特性。 假设我希望字段 "a" 和 "b" 成为常规索引 @Indexes({@Index(fields= {@Field("a"), @Field("b")})})。 但是我如何使用 options = @IndexOptions(unique = true) 添加其他索引字段?

谢谢

你可以试试下面的方法。

@Indexes({@Index(fields= {@Field("a"), @Field("b")}), @Index(options= @IndexOptions(unique = true), fields= {@Field("c")})})
@Entity(collection_name)
public class IndexClass {

        @Id
        private Long id;
        private String a;
        private String b;
        private String c;

     // Getters and Setters

}

启动代码:

Morphia morphia = new Morphia(); 
morphia.map(IndexClass.class); 
MongoClient client = new MongoClient(); 
Datastore datastore = morphia.createDatastore(client, db_name); 
datastore.ensureIndexes();