【问题标题】:How to validate Entitiy for only 1 field如何仅验证 1 个字段的实体
【发布时间】:2013-04-25 02:16:49
【问题描述】:

我有一个关于 JPA 验证器的简单问题

@Entity
class Account {
  @NotNull
  int id;
   @Size(max = 30, min = 6)
  String name;

  @Size(max = 30, min = 5)
  @NotNull
  String password;
}

如果我打电话

  Set<ConstraintViolation<Account>> constraintViolations =
            validator.validate(account);

它将验证所有字段。在某些情况下,我不想验证所有字段。如何仅验证密码?

感谢您的宝贵时间。

【问题讨论】:

    标签: hibernate spring-mvc bean-validation


    【解决方案1】:

    为此调用validateProperty() 方法而不是validate()

    Set<ConstraintViolation<Account>> constraintViolations =
        validator.validateProperty(account, "password");
    

    另见example in documentation

    顺便说一句,还有 validateValue() 方法可能有用。组也可以用来实现这一点。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-05-18
      相关资源
      最近更新 更多