当前位置: 移动技术网 > IT编程>开发语言>Java > JSR303数据校验笔记

JSR303数据校验笔记

2020年07月31日  | 移动技术网IT编程  | 我要评论
JSR303数据校验笔记要使用JSR303数据校验,首先要导入相关依赖 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-validation</artifactId> </dependency>其次,需要在所编写的实体类上加上@Validated注

JSR303数据校验笔记

要使用JSR303数据校验,首先要导入相关依赖

  <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-validation</artifactId>
  </dependency>

其次,需要在所编写的实体类上加上@Validated注解,开启校验功能

@Component
@ConfigurationProperties(prefix = "user")
@Validated
public class User {
    @Email(message = "邮箱地址格式错误")//这里验证name是否为邮箱格式,不是则报错,打印出提示信息 "邮箱地址格式错误",当然不设置message的话会有默认的报错信息
    private String name;
    private String email;
}

在配置文件application.yaml中配置实体类User

user:
  name: xin3123
  email: 123456@qq.com

写一个测试类尝试打印出User进行测试

@SpringBootTest
class TestJsr303ApplicationTests {
    @Autowired
    private User user;
    @Test
    void contextLoads() {
     System.out.println(user);
}


运行测试结果为:
在这里插入图片描述

所以实现了数据校验

数据校验有许多注解,针对不同需求的校验方式,以下是一些常用的校验规则

@NotNull(message=“名字不能为空”)
private String userName;

@Max(value=120,message=“年龄最大不能查过120”)
private int age;

@Email(message=“邮箱格式错误”)
private String email;

空检查@Null
验证对象是否为null

@NotNull
验证对象是否不为null, 无法查检长度为0的字符串

@NotBlank
检查约束字符串是不是Null还有被Trim的长度是否大于0,只对字符串,且会去掉前后空格.

@NotEmpty
检查约束元素是否为NULL或者是EMPTY. Booelan检查

@AssertTrue
验证 Boolean 对象是否为 true

@AssertFalse
验证 Boolean 对象是否为 false

长度检查@Size(min=, max=)
验证对象(Array,Collection,Map,String)长度是否在给定的范围之内

@Length(min=, max=) string is between min and max included.

日期检查@Past
验证 Date 和 Calendar 对象是否在当前时间之前

@Future
验证 Date 和 Calendar 对象是否在当前时间之后

@Pattern
验证 String 对象是否符合正则表达式的规则
…等等除此以外,我们还可以自定义一些数据校验规则

本文地址:https://blog.csdn.net/L_GRAND_ORDER/article/details/107702654

如您对本文有疑问或者有任何想说的,请 点击进行留言回复,万千网友为您解惑!

相关文章:

验证码:
移动技术网