@NotNull
使用该注解的字段的值不能为null
,否则验证无法通过。
实体类代码:
@Entity
@Data
public class Person {
@Id
@GeneratedValue
private Integer id;
@NotNull(message = "name不能为空")
private String name;
private Integer age;
}
在控制器接受参数时,添加@Valid
注解,例如:
public String indexUI(@Valid Person person, BindingResult result)
可以通过BindingResult
对象获取相关的错误提示。
其他验证的注解
@Null
修饰的字段在验证时必须是null
,否则验证无法通过。@Size
如下代码表示,修饰的字段长度不能超过5或者低于。
@Size(min = 1, max = 5)
private String name;
- @Max
如下代码表示,该字段的最大值为19,否则无法通过验证。
@Max(value = 19)
private Integer age;
@Min
同理,被该注解修饰的字段的最小值,不能低于某个值。@AssertFalse
该字段值为false
时,验证才能通过。@AssertTrue
该字段值为true
时,验证才能通过。@DecimalMax
验证小数的最大值。
@DecimalMax(value = "12.35")
private double money;
@DecimalMin
验证小数的最小值。@Digits
验证数字的整数位和小数位的位数是否超过指定的长度。
@Digits(integer = 2, fraction = 2)
private double money;
- @Future
验证日期是否在当前时间之后,否则无法通过校验。
@Future
private Date date;
@Past
验证日期是否在当前时间之前,否则无法通过校验。@Pattern
用于验证字段是否与给定的正则相匹配。
@Pattern(regexp = "[abc]")
private String name;