spring boot 自定义Validator注解

Posted sanboshi

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了spring boot 自定义Validator注解相关的知识,希望对你有一定的参考价值。

spring boot在Post接受一个对象参数的时候可以使用@Valid去验证,如下代码

技术分享图片

在创建一个User类

技术分享图片

上面的@NotBlank和@Past就做了一个判断,如何做类似的注解用来验证数据

创建一个MyConstraint的接口

技术分享图片

@Retention :用来说明该注解类的生命周期。它有以下三个参数:
RetentionPolicy.SOURCE : 注解只保留在源文件中
RetentionPolicy.CLASS : 注解保留在class文件中,在加载到JVM虚拟机时丢弃
RetentionPolicy.RUNTIME : 注解保留在程序运行期间,此时可以通过反射获得定义在某个类上的所有注解。

@Target : 用来说明该注解可以被声明在那些元素之前。
ElementType.TYPE:说明该注解只能被声明在一个类前。
ElementType.FIELD:说明该注解只能被声明在一个类的字段前。
ElementType.METHOD:说明该注解只能被声明在一个类的方法前。
ElementType.PARAMETER:说明该注解只能被声明在一个方法参数前。
ElementType.CONSTRUCTOR:说明该注解只能声明在一个类的构造方法前。
ElementType.LOCAL_VARIABLE:说明该注解只能声明在一个局部变量前。
ElementType.ANNOTATION_TYPE:说明该注解只能声明在一个注解类型前。
ElementType.PACKAGE:说明该注解只能声明在一个包名前。

@Constraint来限定自定义注解的方法
这里写的类是下面自定义的类

接口里面的方法是其他注解上都有这些方法,列如@Past技术分享图片

技术分享图片

 

 

https://www.phpsong.com/3567.html

 













以上是关于spring boot 自定义Validator注解的主要内容,如果未能解决你的问题,请参考以下文章

基于Spring Validation自定义校验注解

当 Spring Boot 中使用 Hibernate Validator 的 Bean 验证失败时,如何抛出自定义异常?

Spring-Boot 如何正确注入 javax.validation.Validator

如何在 Spring Boot 优雅关闭加入一些自定义机制

深入JVM分析spring-boot应用hibernate-validator

使用validator-api来验证spring-boot的参数