JSR303依赖:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-validation</artifactId>
</dependency>
常用注解:
@Null ------》验证对象是否为null
@NotNull ------》验证对象是否不为null, 无法查检长度为0的字符串
@NotBlank ------》检查约束字符串是不是Null还有被Trim的长度是否大于0,只对字符串,且会去掉前后空格.
@AssertTrue------》 验证 Boolean 对象是否为 true
@AssertFalse------》 验证 Boolean 对象是否为 false
@Size(min=, max=) ------》验证对象(Array,Collection,Map,String)长度是否在给定的范围之内
@Length(min=, max=) ------》Validates that the annotated string is between min and max included.
@Min ------》验证 Number 和 String 对象是否大等于指定的值
@Max ------》验证 Number 和 String 对象是否小等于指定的值
@Email ------》验证是否是邮件地址,如果为null,不进行验证,算通过验证。
@Pattern 验证 String 对象是否符合正则表达式的规则,被注释的元素符合制定的正则表达式,regexp:正则表达式 flags: 指定 Pattern.Flag 的数组,表示正则表达式的相关选项。
业务逻辑代码:
public String insertUser(@Valid User user, BindingResult bindingResult){
if (bindingResult.hasErrors()){
Map<String, Object> map = new HashMap<>();
List<FieldError> errors = bindingResult.getFieldErrors();
return “false”;
}
}