如何使文档中的字段唯一?

问题描述 投票:1回答:2

我正在使用spring数据mongo。除了document之外,primary key还有一个领域需要独特,但根据我的要求,我不能使用@Indexed(unique=true)。在spring数据mongo中是否有像@Column(unique=true)这样的注释使该字段成为唯一的?

java mongodb spring-data-mongodb
2个回答
1
投票

在这种情况下,您需要的是稀疏索引。

试试@Indexed(unique=true, sparse=true)。请阅读此类索引here的文档


1
投票

以下方法也可用于以编程方式定义indexes。此方法的优点是它提供了用于定义索引的编程控制。

this.mongoTemplate.indexOps(<Document>.class).ensureIndex(new Index("<fieldName>", Direction.ASC).unique());
© www.soinside.com 2019 - 2024. All rights reserved.