@Validated注解对应类型

Posted 沛沛老爹

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了@Validated注解对应类型相关的知识,希望对你有一定的参考价值。

 @Validated注解对应类型(一)

接上篇

@Negative

负数校验。校验的值一定得是负数。

必须是严格的负数(即,0 被视为无效值)。

支持的类型有:

  • BigDecimal
  • BigInteger
  • byteshortintlongfloatdouble和它们各自的包装器
  • 包含null值

@NegativeOrZero

负数和零值校验

上面的条件下增加0。

其他和上面的一样。

@NotBlank

非null非空(包含空白字符)校验。

数据不能是null,这个和其他上面的不一样,上面其他的都支持null值.

只接受CharSequence类型

@NotEmpty

不为空不为null校验

支持的类型有:

  • CharSequence(评估字符序列的长度)
  • Collection(集合大小被评估)
  • Map(评估地图大小)
  • 数组(评估数组长度)

@NotNull

非null校验。

支持所有的类型参数

@Null

null校验。和@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
  • byteshortintlongfloatdouble和它们各自的包装器

@PositiveOrZero

比@Positive多了个0。

其他的都一样

 

@Size

边界校验(包含当前值)

带注释的元素大小必须在指定边界(包括)之间。

支持的类型有:

  • CharSequence(估算字符序列的长度)
  • Collection(估算集合大小)
  • Map(估算map大小)
  • 数组(估算数组长度)

开发者涨薪指南 48位大咖的思考法则、工作方式、逻辑体系

以上是关于@Validated注解对应类型的主要内容,如果未能解决你的问题,请参考以下文章

java注解@Valid@Validated表单验证

@validated注解怎么用

@Valid和@Validated的总结区分(转)

@Validated和@Valid校验

@Validated注解和@Valid注解区别

@Valid 和 @Validated 注解用法详解