Skip to content

自定义校验组

czh-tool默认提供@AddGroup和@UpdateGroup注解,用于新增组和修改组。

1. 新增自定义组

java
package com.example.demo.controller;

/**
 * @author czh
 * @since 1.0
 */

public interface DiyGroup {
}

实体类使用自定义组

java
    /**
     * id
     */
    @Null(message = "新增不能指定id",groups = {DiyGroup.class})
    @NotBlank(message= "修改id不能为空",groups = {DiyGroup.class})
    private String id;

Controller层

    /**
     * @return: void
     * @description:校验使用自定义组
     * @author: czh
     * @date: 2024/1/9 15:57
     **/
    @PostMapping("/add")
    public void add(@RequestBody  @Validated({DiyGroup.class}) QueryVo queryVO) {
    }
java
{
    "msg": "参数校验失败",
    "code": 500,
    "data": {
        "id": "新增不能指定id"
    }
}

2.校验规则注解

注解详细信息
@Null被注释的元素限制必须为 null
@NotNull被注释的元素限制必须不为 null
@AssertTrue被注释的元素限制必须为 true
@AssertFalse被注释的元素限制必须为 false
@Min(value)被注释的元素限制必须是一个数字,其值必须大于等于指定的最小值
@Max(value)被注释的元素限制必须是一个数字,其值必须小于等于指定的最大值
@DecimalMin(value)被注释的元素限制必须是一个数字,其值必须大于等于指定的最小值
@DecimalMax(value)被注释的元素限制必须是一个数字,其值必须小于等于指定的最大值
@Size(max, min)被注释的元素的大小限制必须在指定的范围内
@Digits (integer, fraction)被注释的元素限制必须是一个数字,其值必须在可接受的范围内
@Past被注释的元素限制必须是一个过去的日期
@Future被注释的元素限制必须是一个将来的日期
@Email被注释的元素限制必须是电子邮箱地址
@Length被注释的字符串的大小限制必须在指定的范围内
@NotEmpty被注释的字符串的限制必须非空
@Range被注释的元素限制必须在合适的范围内
@Pattern(value)被注释的元素限制必须符合指定的正则表达式

Released 1.0.1