刚开始使用Hibernate Validator。我有一个案例,保存时自动生成bean的id。我会在保存前验证bean。此时id可以为null。但是,当我想要更新它时,id必须是空的。
因此字段上的泛型@NotNull将不起作用,因为当我去保存它时,它将无法验证。
有很多方法可以解决这个问题,但我想知道spec或hibernate实现是否有标准的方法来实现这一点。我希望在保存时没有任何验证错误,也不会在更新时验证。
比如应用约束,但除非隐式命名或类似的东西,否则忽略它。
提前致谢。
答案 0 :(得分:2)
您可以使用groups实现这一目标。
public class MyBean {
@NotNull(groups = UpdateBean.class)
private Long id;
}
在没有id
的情况下验证:
validator.validate(myBean);
使用id
验证
validator.validate(myBean, UpdateBean.class);