包名:
javax.validation.constraints
实体类:属性上加上校验规则
使用举例:
/**
*message:校验错误提示信息,不写有默认的
*groups校验分组,用处:列如保存数据和更新数据,必须需要的实体属性是不同的
**/
(1)
@NotBlank(message = "用户名必须提交", groups = {AddGroup.class, UpdateGroup.class}) private String name;
(2)
@NotEmpty @Pattern(regexp="/^[a-zA-Z]$/",message = "检索字母必须是一个字母") private String firstLetter;
有很多已经定义规则,可以直接用,就不列举了,也可以自己定义
@Pattern自定义校验规则(正则)
Controller层:开启规则,校验前端提交数据(两种)
@Validated可以添加数用的分组,此注解spring带的,属性上没有添加分组的,不校验,(2)不校验
举例:
public R save(@Validated({AddGroup.class}) @RequestBody User user){}
其中AddGroup是自定义的接口,只是一个标签
@Valid直接开启不是spring带的,属性上有校验规则,就校验
举例:
public R save(@Valid({AddGroup.class}) @RequestBody User user){}