JSR303数据校验笔记
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
上一篇: MybatisPlusException: Error: GlobalConfigUtils setMetaData Fail ! Cause:com.baomidou.mybatisplus.co
下一篇: 包装类
推荐阅读
-
Android学习笔记--通过Application传递数据代码示例
-
Python学习笔记之抓取某只基金历史净值数据实战案例
-
python网络编程学习笔记(九):数据库客户端 DB-API
-
Python ORM框架SQLAlchemy学习笔记之数据查询实例
-
前端笔记之微信小程序(二){{}}插值和MVVM模式&数据双向绑定&指令&API
-
Evernote 印象笔记数据迁移教程图文介绍
-
javascript学习笔记整理(概述、变量、数据类型简介)
-
Python ORM框架SQLAlchemy学习笔记之数据添加和事务回滚介绍
-
基于preg_match_all采集后数据处理的一点心得笔记(编码转换和正则匹配)
-
笔记本画了无法开机,急用里面的数据该怎么办呢? 取回电脑内数据的技巧