一、总结
注解 |
解释说明 |
@Null |
限制只能为null |
@NotNull |
校验入参不能为空,无法正确校检长度为0的字符串或以完全为空格的字符串 |
@AssertFalse |
限制必须为false |
@AssertTrue |
限制必须为true |
@DecimalMax(value) |
限制必须为一个不大于指定值的数字,小数存在精度 |
@DecimalMin(value) |
限制必须为一个不小于指定值的数字,小数存在精度 |
@Digits(integer,fraction) |
限制必须为一个小数,且整数部分的位数不能超过integer,小数部分的位数不能超过fraction |
@Max(value) |
限制必须为一个不大于指定值的数字 |
@Min(value) |
限制必须为一个不小于指定值的数字 |
@Future |
限制必须是一个将来的日期 |
@Past |
限制必须是一个过去的日期 |
@Pattern(regexp = "") |
使用正则表达式验证String,接受字符序列,regexp必填,所修饰为null时认为是通过验证 |
@Size(max,min) |
限制字符长度必须在min到max之间 |
@Length(min=, max=) |
长度是否在范围内 |
@Past |
验证注解的元素值(日期类型)比当前时间早 |
@NotEmpty |
验证注解的元素值不为null且不为空(字符串长度不为0、集合大小不为0) |
@NotBlank |
验证注解的元素值不为空(不为null、去除首位空格后长度为0),不同于@NotEmpty,@NotBlank只应用于字符串且在比较时会去除字符串的空格 |
@Email |
验证注解的元素值是Email,也可以通过正则表达式和flag指定自定义的email格式 |
二、使用示例
@GetMapping("/getBySubmitter")
public ResponseMessage getSubmitterWeekly(AuthContext authContext,
@NotNull(message = "teamId不能为null")
@RequestParam("teamId") Integer teamId,
@RequestParam("week") String week){
// 伪代码
}