javax NotBlank和Email注解失效的解决
作者:黔梦
这篇文章主要介绍了javax NotBlank和Email注解失效的解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
javax NotBlank和Email注解失效
使用javax的NotBlan和Email注解,
结果报类似错误
no validator could be found for constraint 'javax.validation.constraints.notblank'
原来是由于javax只提供了注解的定义,未提供对应的处理器,一般使用hibernate提供的注解处理器。
但是hibernate未提供NotBlank和Email注解的处理器(但是hibernate自己定义的NotBlank和Email注解是有处理器的)
所以在使用NotBlank或Email时,
注意使用hibernate的注解,如下:
hibernate提供的注解处理器如下:
JSR303-@Email注解报错
SpringBoot用到 JSR303 校验邮箱 @Email注解报错
解决方法:
是因为缺少依赖,在pom.xml文件中添加以下依赖即可
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-validation</artifactId> </dependency>
记得在校验的属性上面加上对应的注解,同时需要在该类的上方加上@Valiated开启JSR303数据校验的注解,如一下代码:
@Validated //开启jsr303数据校验的注解 public class Student { @Email private String email; private String name; private int age; private boolean sex; private Date birthday; private Map<String, Object> location; private String[] hobbies; private List<String> skills; private Pet pet;
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。