我正在使用spring数据mongo。除了document
之外,primary key
中有一个字段需要是唯一的,但根据我的要求,我无法使用@Indexed(unique=true)
。在spring data mongo中是否有像@Column(unique=true)
这样的注释来使该字段成为唯一的?
答案 0 :(得分:1)
以下方法也可以用于以编程方式定义indexes
。这种方法的优点是它提供了用于定义索引的程序控制。
this.mongoTemplate.indexOps(<Document>.class).ensureIndex(new Index("<fieldName>", Direction.ASC).unique());
答案 1 :(得分:0)
在这种情况下,您需要的是稀疏索引。
试试@Indexed(unique=true, sparse=true)
。请阅读此类索引here