2010-07-16 115 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註釋。