如何在Morphia Java中创建索引和不同的唯一索引?

时间:2017-06-07 13:05:47

标签: java mongodb morphia

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

由于

1 个答案:

答案 0 :(得分:1)

您可以尝试以下内容。

@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();