SpringBoot使用 Hibernate Validator 校验数据的属性

使用校验的对象前面要加上@Valid注解
BindingResult 参数校验的结果会存储在此对象中,可以根据属性判断是否校验通过,校验不通过可以将错误信息打印出来。

注解 应用目标 运行时检查 Hibernate 元数据影响
@Length(min=, max=) 属性(String) 检查字符串长度是否符合范围 列长度会被设到最大值
@Max(value=) 属性(以 numeric 或者 string 类型来表示一个数字) 检查值是否小于或等于最大值 对列增加一个检查约束
@Min(value=) 属性(以 numeric 或者 string 类型来表示一个数字) 检查值是否大于或等于最小值 对列增加一个检查约束
@NotNull 属性 检查值是否非空(not null) 列不为空
@Past 属性(date 或 calendar) 检查日期是否是过去时 对列增加一个检查约束
@Future 属性(date 或 calendar) 检查日期是否是将来时
@Pattern(regex=“regexp”, flag=) 属性(String) 检查属性是否与给定匹配标志的正则表达式相匹配(见 java.util.regex.Pattern )
@Range(min=, max=) 属性(以 numeric 或者 string 类型来表示一个数字) 检查值是否在最小和最大值之间(包括临界值) 对列增加一个检查约束
@Size(min=, max=) 属性(array,collection,map) 检查元素大小是否在最小和最大值之间(包括临界值)
@AssertFalse 属性 检查方法的演算结果是否为 false(对以代码方式而不是注解表示的约束很有用)
@AssertTrue 属性 检查方法的演算结果是否为 true(对以代码方式而不是注解表示的约束很有用)
@Valid 属性(object) 对关联对象递归进行验证。如果对象是集合或数组,就递归地验证其元素;如果对象是 Map,则递归验证其值元素
@Email 属性(String) 检查字符串是否符合有效的 email 地址规范

创建是实体类 其中,message=“密码不能为空”,为自定义返回的错误信息。
SpringBoot使用 Hibernate Validator 校验数据的属性
编写controller类
SpringBoot使用 Hibernate Validator 校验数据的属性
测试
SpringBoot使用 Hibernate Validator 校验数据的属性
返回结果
SpringBoot使用 Hibernate Validator 校验数据的属性