springboot hibernate-validator 接口参数校验

参数校验注解

添加依赖

<dependency>
    <groupId>org.projectlombok</groupId>
    <artifactId>lombok</artifactId>
    <version>1.18.8</version>
    <scope>provided</scope>
</dependency>
<dependency>
    <groupId>org.hibernate</groupId>
    <artifactId>hibernate-validator</artifactId>
    <version>5.2.2.Final</version>
</dependency>

@NonNull 依赖lombok

校验参数不为空

@Valid 依赖hibernate

校验实体类属性,配合以下注解一起使用

@AssertFalse 校验false

@AssertTrue 校验true

@DecimalMax(value=,inclusive=),小于等于value,inclusive=true,是小于等于

@DecimalMin(value=,inclusive=),小于等于value,inclusive=true,是小于等于

@Max(value=) 小于等于value

@Min(value=) 大于等于value

@NotNull  检查Null,参数为message,可以设置校验失败返回值

@NotBlank 字符类不能为null,且去掉空格之后长度大于

@NotEmpty 集合不能为null,且size大于0

@Past  检查日期

@Pattern(regex=,flag=)  正则

@Size(min=, max=)  字符串,集合,map限制大小

@Validate 对po实体类进行校验

@Validated 依赖springboot ,与@Valid类似

示例

//实体类
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class User {
    @NotNull(message = "名字不能为空")
    private String name;
    @NotBlank @Length
    private String sex;
}

//验证失败会报错
public static void method(@NonNull String str, @Valid @NonNull User user) {
    log.info(user.toString());
}


版权声明:本文为qq_21949519原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。