Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/345.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Hibernate Validator@NotNull是否总是首先触发?_Java_Hibernate_Validation_Hibernate Validator - Fatal编程技术网

Java Hibernate Validator@NotNull是否总是首先触发?

Java Hibernate Validator@NotNull是否总是首先触发?,java,hibernate,validation,hibernate-validator,Java,Hibernate,Validation,Hibernate Validator,换句话说,如果我有两个约束,比如@Email和@NotNull,@Email验证器不会抛出NPE 这似乎很明显,但我之所以这么问,是因为我看到一些自定义验证器检查要验证的值是否为null,如果为true,则返回true。这似乎是个坏主意,因为如果开发人员忘记将@NotNull添加到email字段,那么email字段仍将通过验证 蒂亚, Ole为null返回true被认为是Bean中的最佳实践 验证和所有内置约束都遵守它(如果可能)。 Bean验证规范在第节中说明: 虽然不是强制性的,但分割数据被

换句话说,如果我有两个约束,比如
@Email
@NotNull
@Email
验证器不会抛出NPE

这似乎很明显,但我之所以这么问,是因为我看到一些自定义验证器检查要验证的值是否为null,如果为true,则返回true。这似乎是个坏主意,因为如果开发人员忘记将
@NotNull
添加到
email
字段,那么email字段仍将通过验证

蒂亚,
Ole为
null
返回
true
被认为是Bean中的最佳实践 验证和所有内置约束都遵守它(如果可能)。 Bean验证规范在第节中说明:

虽然不是强制性的,但分割数据被认为是一种良好的做法 来自非空约束验证的核心约束验证 (例如,@Email约束将在null对象上返回true, i、 e.不会处理@NotNull验证)

null可以有多种含义,但通常用于表示 值没有意义、不可用或只是未知。 在大多数情况下,值上的这些约束与其他约束是正交的 限制。例如,字符串(如果存在)必须是电子邮件,但 可以为空。将这两个关注点分开是一种很好的做法