松散绑定
在spring boot中的yaml文件中的 last-name 可以以代码中的lastName相对应绑定,也就是说,last-name 中的“ -n ”可以看作lastName中的大写字母“N”,这就是松散绑定。
代码
// yaml文件
person:
last-name: chen
age: 3
happy: false
birth: 2002/12/2
maps: {k1: v1,k2: v2}
lists:
- basketball
- girl
- music
dog:
name: 旺财
age: 3
//正式代码
private String lastName;
private Integer age;
private Boolean happy;
private Date birth;
private Map<String,Object> maps;
private List<Object> lists;
private Dog dog;
//--------------------------------
last-name ==== lastName
JSR303数据校验
-
就是一种数据校验格式,在类上绑定
@Validated
,在属性上使用指定的参数如@Email(message="邮箱格式错误")
-
常见的数据校验参数,包是
javax.validation.constraints
-
倘若在@Email时显示错误,就需要在pom.xml文件中导入相应的依赖spring-boot-starter-validation
导入依赖即可
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-validation</artifactId>
</dependency>
测试
// JSR303常用校验
@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 对象是否符合正则表达式的规则