JSR303校验

Author Avatar
ciky 08月 21,2024
  • 在其它设备中阅读本文章
  • 点击生成二维码

JSR303校验

  • springBoot提供了JSR-303的支持,它就是sprint-boot-starter-validation,底层使用Hibernate Validator

(1) 统一校验实现

  1. 引入maven依赖

    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-validation</artifactId>
    </dependency>
    
  2. 模型类添加注解

    image20240528002740723.png
    image20240528002954887.png

  3. controller添加注解

    image20240528002938250.png

  4. 异常处理器捕获异常

    image20240528003111930.png


(2) 分组校验

  • 有时候在一个属性上设置一个校验规则不能满足要求
  • 注意:使用分组后,模型类中没有groups属性的不生效
  1. 创建空接口表示不同的分组

    public class ValidationGroups {
        public interface Insert{};
        public interface Update{};
        public interface Delete{};
    }
    
  2. 模型类注解上添加groups属性

    image20240528003626788.png

  3. controller注解上添加分组名

    image20240528003721909.png


(3) 校验规则不满足

1、手写校验代码 。

2、自定义校验规则注解。