
SpringBoot自定义注解参数校验
参考
SpringBoot 参数校验的方法 - 木白的菜园 - 博客园
更加灵活的参数校验,Spring-boot自定义参数校验注解_d1874的博客-CSDN博客
常用注解
- @AssertFalse 所注解的元素必须是Boolean类型,且值为false
- @AssertTrue 所注解的元素必须是Boolean类型,且值为true
- @DecimalMax 所注解的元素必须是数字,且值小于等于给定的值
- @DecimalMin 所注解的元素必须是数字,且值大于等于给定的值
- @Digits 所注解的元素必须是数字,且值必须是指定的位数
- @Future 所注解的元素必须是将来某个日期
- @Max 所注解的元素必须是数字,且值小于等于给定的值
- @Min 所注解的元素必须是数字,且值小于等于给定的值
- @Range 所注解的元素需在指定范围区间内
- @NotNull 所注解的元素值不能为null
- @NotBlank 所注解的元素值有内容
- @Null 所注解的元素值为null
- @Past 所注解的元素必须是某个过去的日期
- @PastOrPresent 所注解的元素必须是过去某个或现在日期
- @Pattern 所注解的元素必须满足给定的正则表达式
- @Size 所注解的元素必须是String、集合或数组,且长度大小需保证在给定范围之内
- @Email 所注解的元素需满足Email格式
格式化输出异常
import javax.validation.ConstraintViolation; import javax.validation.ConstraintViolationException; import java.util.Set; /** * 全局异常处理类 * * @author sun */ @RestControllerAdvice public class GlobalExceptionHandler { /** * 参数校验全局异常 */ @ExceptionHandler(ConstraintViolationException.class) public Result handlerValidator(ConstraintViolationException constraintViolationException) { Set<ConstraintViolation<?>> constraintViolationSets = constraintViolationException.getConstraintViolations(); // Result的为我自定义的全局响应对象 // constraintViolationSets.iterator().next().getMessage()为错误信 return Result.fail(constraintViolationSets.iterator().next().getMessage()); } } 用法如果是单个字段的校验,需要再当前类上加校验注解
import org.springframework.validation.annotation.Validated;可以了
👁️ 阅读量:0
© 版权声明:本文《SpringBoot自定义注解参数校验》内容均为本站精心整理或网友自愿分享,如需转载请注明原文出处:https://www.zastudy.cn/wen/1686808084a342997.html。