@Validated注解对应类型(一)
接上篇
@Negative负数校验。校验的值一定得是负数。
必须是严格的负数(即,0 被视为无效值)。
支持的类型有:
- BigDecimal
- BigInteger
- byte, short, int, long, float, double和它们各自的包装器
- 包含null值
负数和零值校验
上面的条件下增加0。
其他和上面的一样。
@NotBlank非null非空(包含空白字符)校验。
数据不能是null,这个和其他上面的不一样,上面其他的都支持null值.
只接受CharSequence类型
@NotEmpty不为空不为null校验
支持的类型有:
- CharSequence(评估字符序列的长度)
- Collection(集合大小被评估)
- Map(评估地图大小)
- 数组(评估数组长度)
非null校验。
支持所有的类型参数
@Nullnull校验。和@NotNull互斥。同样也支持所有的类型。
@Past
过去时间校验。
由ClockProvider附加到Validatoror 定义ValidatorFactory。默认值clockProvider根据虚拟机定义当前时间,如果需要,应用当前默认时区。
支持的类型有:
- java.util.Date
- java.util.Calendar
- java.time.Instant
- java.time.LocalDate
- java.time.LocalDateTime
- java.time.LocalTime
- java.time.MonthDay
- java.time.OffsetDateTime
- java.time.OffsetTime
- java.time.Year
- java.time.YearMonth
- java.time.ZonedDateTime
- java.time.chrono.HijrahDate
- java.time.chrono.JapaneseDate
- java.time.chrono.MinguoDate
- java.time.chrono.ThaiBuddhistDate
null元素被认为是有效的。
@PastOrPresent过去或者现在的时间校验。
和@Past支持的类型一致。
@Pattern正则表达式校验
正则表达式遵循 Java 正则表达式约定,请参阅Pattern。
接受CharSequence和null
@Positive正数校验。
和@Negative互斥,不包括0
支持的类型有:
- BigDecimal
- BigInteger
- byte, short, int, long, float, double和它们各自的包装器
比@Positive多了个0。
其他的都一样
@Size
边界校验(包含当前值)
带注释的元素大小必须在指定边界(包括)之间。
支持的类型有:
- CharSequence(估算字符序列的长度)
- Collection(估算集合大小)
- Map(估算map大小)
- 数组(估算数组长度)



