2016-03-15 58 views
0

我有以下字段JSR-303驗證:JSR 303 - 定義的大小或空

@Size(min = 6, max = 6, message = "Field needs to be 6 characters") 
private String field; 

要求的字段是要6 characters or null

然後我用valdr-bean-validationhttps://github.com/netceteragroup/valdr-bean-validation)提取它valdr格式和AngularJS使用

問題: 我如何使用JSR-303,使該領域滿足的要求,可以是null or 6 characters?目前我的@Size規則至少需要6個字符。

我不想使用自定義驗證器,因爲與valdr兼容。是一個正則表達式的好選擇?由於

回答

1

是啊,你應該在這個領域使用@Pattern註釋(或兩者尺寸,圖案和任何其他規則組合來創建自己的註釋)

1

我用@Pattern批註與簡單的regex它固定:

@Pattern(regexp = "^.{6,6}$|^$", message = "Field must be 6 digits or empty") 
private String field;