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文件中添加以下依赖即可
1
2
3
4
|
< dependency > < groupId >org.springframework.boot</ groupId > < artifactId >spring-boot-starter-validation</ artifactId > </ dependency > |
记得在校验的属性上面加上对应的注解,同时需要在该类的上方加上@Valiated开启JSR303数据校验的注解,如一下代码:
1
2
3
4
5
6
7
8
9
10
11
12
|
@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; |
以上为个人经验,希望能给大家一个参考,也希望大家多多支持服务器之家。
原文链接:https://blog.csdn.net/sky_ground/article/details/78674257