如何在morphia mongo Db的数据传输模型定义中创建一个必需的字段?例如
public class ExapmleDto {
@Id
private String _id;
private String userName;
}
在这段代码中,我想让username成为一个必填字段。
您有多个选项:
-
Java:在对象上调用
save
时,请检查用户名是否已设置 -
索引:设置用户名的唯一索引。只要不设置
sparse = true
,就只能有一个具有null
用户名的文档。使用Morphia,代码如下(在实体上进行注释):@Indexes(@Index(fields = {@Field("userName")}, options = @IndexOptions(unique = true)))
- 文档验证:MongoDB将在3.2中引入文档验证(即将推出)。然而,Morphia还不支持它(如果它支持的话),所以你需要在MongoDB shell中自己设置它