java注解@Valid@Validated表单验证依赖
spring-boot-starter-web 版本2.x中早期依赖有 `hibernate-validator`,后被移出。
使⽤验证需另外引⼊依赖:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-validation</artifactId>
</dependency>
或者(⼆选⼀)
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-validator</artifactId>
<version>6.1.7.Final</version>
</dependency>
1.分组验证,参数太多不想⼀⼀分组
分组的类继承package ups 下的Default
2.@Valid和@Validated的区分
@Validated是@Valid 的⼀次封装,是Spring提供的校验机制使⽤。
@Valid不提供分组功能
@Validated不提供嵌套验证功能。嵌套验证需要在对应的嵌套属性前加@Valid
@Valid和@Validated的总结区分
3.验证注解
限制说明
时间正则表达式java@Null限制只能为null
@NotNull限制必须不为null
@AssertFalse限制必须为false
@AssertTrue限制必须为true
@DecimalMax(value)限制必须为⼀个不⼤于指定值的数字
@DecimalMin(value)限制必须为⼀个不⼩于指定值的数字
@Digits(integer,fraction)限制必须为⼀个⼩数,且整数部分的位数不能超过integer,⼩数部分的位数不能超过fraction
@Future限制必须是⼀个将来的⽇期
@Max(value)限制必须为⼀个不⼤于指定值的数字
@Min(value)限制必须为⼀个不⼩于指定值的数字
@Past限制必须是⼀个过去的⽇期
限制说明
@Pattern(value)限制必须符合指定的正则表达式
@Size(max,min)限制字符长度必须在min到max之间
@Past验证注解的元素值(⽇期类型)⽐当前时间早
@NotEmpty验证注解的元素值不为null且不为空(字符串长度不为0、集合⼤⼩不为0)
@NotBlank验证注解的元素值不为空(不为null、去除⾸位空格后长度为0),不同于@NotEmpty,@NotBlank只应⽤于字符串且在⽐较时会去除字符串的空格@Email验证注解的元素值是Email,也可以通过正则表达式和flag指定⾃定义的email格式

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。