2010-07-16 32 views

回答

2

对于这两种javax.validation.Lengthorg.hibernate.validator.constraints.Length默认值为:

int max() default Integer.MAX_VALUE; 

即2147483647。所以,不是很无限的,但远远不够。

如果不适合你,你可以定义(每JSR 303 - javax.validation)你自己的约束,使用长PARAM不是int的。

2

我知道我可以在此注释上设置最大值,但是有人知道是否可以设置无限大的最大值?

maxint,缺省值为Integer.MAX_VALUE。而且,由于Java的String API不支持字符串长度超过Integer.MAX_VALUE字符(例如一个String将需要超过4GB的存储更多),这是一致的。并允许更大尺寸的限制等级绝对是

顺便说一下,一个无限的最大值并没有多大意义,因为“约束”。如果你不希望约束的东西,不要定义的约束。请注意,我建议使用来自Bean验证的标准@Size而不是Hibernate Validator的@Length注释。