javahibernate@NotEmpty注释在Javax中是等效的。包装或替代品
有没有一种方法可以在不编写自定义验证的情况下实现@NotEmpty
hibernate验证?
javax。验证包不包含此批注。只有@NotNull
。但它不会验证非null但为空的值。因此,我希望看到@NotEmpty
的替代方案
使用@Pattern
?怎么做
你可以在下面搜索框中键入要查询的问题!
有没有一种方法可以在不编写自定义验证的情况下实现@NotEmpty
hibernate验证?
javax。验证包不包含此批注。只有@NotNull
。但它不会验证非null但为空的值。因此,我希望看到@NotEmpty
的替代方案
使用@Pattern
?怎么做
# 1 楼答案
对于Hibernate,较新版本中不推荐使用它
对于较新版本的Javax验证,它有
@Empty
使用
import javax.validation.constraints.NotEmpty;
# 2 楼答案
在Hibernate 6之后的Hibernate
@NotEmpty
源代码中,它告诉我们使用标准javax.validation.constraints.NotEmpty
约束:见:https://github.com/hibernate/hibernate-validator/blob/6.0/engine/src/main/java/org/hibernate/validator/constraints/NotEmpty.java
这个新注释来自BeanValidation2.0(JSR380)。见:
http://beanvalidation.org/2.0/spec/#builtinconstraints-notempty
https://github.com/beanvalidation/beanvalidation-api/blob/master/src/main/java/javax/validation/constraints/NotEmpty.java
# 3 楼答案
NotEmpty只是
@NotNull
和@Size(min=1)
的组合# 4 楼答案
请注意@NotEmpty将返回对列表有效的<&燃气轮机;包含空元素的
在@QueryParam列表中有点奇怪<&燃气轮机
正如Affe所说,我做了一个自定义注释,它本身用@NotNull和@Size(min=1)进行注释,并使用一个自定义验证器迭代集合,并且仅当元素不为null时才定位布尔标志