文档库 最新最全的文档下载
当前位置:文档库 › Hibernate Validation各注解的用法

Hibernate Validation各注解的用法

Hibernate Validation各注解的用法
Hibernate Validation各注解的用法

Annotation属于Bean Validation 规范应用位置

@AssertFalse yes field/property @AssertTrue yes field/property

@CreditCardNu mber no字段或属性, 要求其类

型为String.

@DecimalMax yes 字段或属性. 支持类型包括BigDecimal, BigInteger, String, byte, short, int, long 和其各自对应的包装器类型.

@DecimalMin yes 字段或属性. 支持类型包括BigDecimal, BigInteger, String, byte, short, int, long 和其各自对应的包装器类型.

@Digits(integer =, fraction=)yes

字段或属性. 支持类型

包括BigDecimal,

BigInteger, String,

byte, short, int, long

和其各自对应的包装

器类型.

@Email no字段或属性, 需要是

String类型的.

@Future yes是java.util.Date和

java.util.Calendar.

@Length(min=, max=)no字段或属性, 需要是

String类型的.

@Max yes 字段或属性. 支持类型包括BigDecimal, BigInteger, String, byte, short, int, long 和其各自对应的包装器类型.

@Min yes 字段或属性. 支持类型包括BigDecimal, BigInteger, String, byte, short, int, long 和其各自对应的包装器类型.

@NotNull yes field/property @NotBlank no field/property

@NotEmpty no 字段或属性. 支持的类型包括String, Collection, Map 和数组.

@Null yes field/property

@Past yes 字段或属性, 支持类型是java.util.Date和java.util.Calendar.

@Pattern(regex =, flag=)yes字段或属性, 需要是

String类型的.

@Range(min=, max=)no

包括BigDecimal,

BigInteger, String,

byte, short, int, long

和其各自对应的包装

器类型.

@Size(min=, max=)yes

字段或属性. 支持的类

型包括String,

Collection, Map 和

数组.

@ScriptAssert(l

ang=, script=,

alias=)

no类@URL(protocol

=, host=, port=)no字段或属性, 要求其类

型为String.

@Valid yes字段或属性. 支持所有

的非原始类型.

检查给定的日期

是否比现在晚.

没有检查该字符串的

长度是否在min 和max规定的范围内.对应的数据库表字段的长度会被设置成约束中定义的最大值.

检查该值是否小

于或等于约束条件中指定的最大值.会给对应的数据库表字段添加一个check 的约束条件.

检查该值是否大

于或等于约束条件中规定的最小值.会给对应的数据库表字段添加一个check 的约束条件.

检查该值不为

null..

对应的表字段不允许为null.检查该字符串不

为null,并且不是

空字符串. 本约

束和下面的

@NotEmpty的

不同之处在于,本

约束只能被用在

字符串类型上,并

且会忽略字符串

尾部的空白字符.

没有

检查该值不为

null同时也不为

空.

没有

检查该值应该为

null.没有

检查标注对象中

的值表示的日期

比当前早.

没有

检查该字符串是

否能够在match

指定的情况下被

regex定义的正

则表达式匹配.

没有

检查该值是否在[min, max)之

没有

检查该值的size 是否在[min, max)之间.对应的数据库表字段的长度会被设置成约束中定义的最大值.

要使用这个约束

条件,必须先要保

证Java

Scripting API

即JSR 223 ("Scripting for

the Java TM Platform")的实

现在类路径当中.

如果使用的时

Java 6的话,则

不是问题, 如果

是老版本的话,

那么需要把 JSR

223的实现添加

进类路径. 这个

约束条件中的表

达式可以使用任

何兼容JSR 223

的脚本来编写.

(更多信息请参

考javadoc)

没有

判断该值是否是

一个有效的URL,

如果给出了约束

中的protocol,

host或port参

数的话,那个被校

验的值需要和其

匹配.

没有

递归的对关联对

象进行校验, 如

果关联对象是个

集合或者数组,

那么对其中的元

没有素进行递归校验,

如果是一个

map,则对其中

的值部分进行校

验.

相关文档
相关文档 最新文档