如何在 javax 约束验证中进行 OR?
How to make OR in javax constraint validation?
我想找到一些在 javax 验证中制作 or
的解决方案。
类似于:
@Null
@Or
@MyCustomValidation
private MyObject myObject;
或者类似这样的东西。所以,基本上,我只想在字段不为空时调用 MyCustomValidation
。否则,它也应该有效。
如果 myObject 为 null,我当然可以在 MyCustomValidation
到 return true 中添加额外的逻辑,但是我应该在许多看起来不太好的验证器中添加这个逻辑。
让您的验证器为 null 值返回 true 确实是我们在开发自定义验证器时推荐的做法。
除了@NotEmpty
有点特殊外,Hibernate Validator提供的所有验证器都遵循这个规则。
它允许您在需要非空值时使用 @NotNull
约束组合。
我不认为这个额外的逻辑会成为问题,它非常简单。如果是,您仍然可以有一个抽象父级 class.
我想找到一些在 javax 验证中制作 or
的解决方案。
类似于:
@Null
@Or
@MyCustomValidation
private MyObject myObject;
或者类似这样的东西。所以,基本上,我只想在字段不为空时调用 MyCustomValidation
。否则,它也应该有效。
如果 myObject 为 null,我当然可以在 MyCustomValidation
到 return true 中添加额外的逻辑,但是我应该在许多看起来不太好的验证器中添加这个逻辑。
让您的验证器为 null 值返回 true 确实是我们在开发自定义验证器时推荐的做法。
除了@NotEmpty
有点特殊外,Hibernate Validator提供的所有验证器都遵循这个规则。
它允许您在需要非空值时使用 @NotNull
约束组合。
我不认为这个额外的逻辑会成为问题,它非常简单。如果是,您仍然可以有一个抽象父级 class.