morphia dto中的必填字段和可选字段

时间:2015-12-07 09:41:58

标签: morphia required-field

如何在morphia mongo Db的数据传输模型定义中创建一个字段?例如

    public class ExapmleDto {
        @Id
        private String _id;
        private String userName;
    }

在此代码中,我想将用户名设为必填字段。

1 个答案:

答案 0 :(得分:1)

您有多种选择:

  1. Java :当您在对象上调用save时,请检查是否已设置用户名。
  2. 索引:在用户名上设置唯一索引。只要您未设置sparse = true,就只能有一个null用户名的文档。使用Morphia,代码看起来像这样(在实体上注释):@Indexes(@Index(fields = {@Field("userName")}, options = @IndexOptions(unique = true)))
  3. 文档验证:MongoDB将引入document validation和3.2(即将到来)。但是,Morphia还不支持这个(如果有的话),所以你需要自己在MongoDB shell中设置它。