我们可以在实体里面的属性上面加注解。例如年龄小于18就不满足条件1)我们就在实体的年龄属性上面加@Min(value=18,message=“未成年”)
2)在controller方法参数左边加@Valid
3)添加BindingResult 类型的参数,用来接受验证后的结果
if(bindingResult.hasErrors()){
return ResultUtil.error(1,bindingResult.getFieldError().getDefaultMessage());
}
这样就完成了一个简单的表单验证。
而除了@NotEmpty,@Length之外,还有很多其他的注解:
@null 验证对象是否为空
@notnull 验证对象是否为非空
@asserttrue 验证 boolean 对象是否为 true
@assertfalse 验证 boolean 对象是否为 false
@min 验证 number 和 string 对象是否大等于指定的值
@max 验证 number 和 string 对象是否小等于指定的值
@decimalmin 验证 number 和 string 对象是否大等于指定的值,小数存在精度
@decimalmax 验证 number 和 string 对象是否小等于指定的值,小数存在精度
@size 验证对象(array,collection,map,string)长度是否在给定的范围之内
@digits 验证 number 和 string 的构成是否合法
@past 验证 date 和 calendar 对象是否在当前时间之前
@future 验证 date 和 calendar 对象是否在当前时间之后
@pattern 验证 string 对象是否符合正则表达式的规则
@Email 验证邮箱
4)前段传过来的是一个中文,数据库存储的是问号
将链接数据库连接字符串改为
url: jdbc:mysql://127.0.0.1:3306/newhrm?characterEncoding=UTF-8