[email protected]等註解不生效
阿新 • • 發佈:2018-12-17
現象
表單資料對應的Java Bean屬性上新增的諸多校驗註解不生效,如下示例:
@NotEmpty(message = "規則不能為空", groups = {AppConfigGroup.Add.class,AppConfigGroup.Update.class})
@Size(max = 200,groups= {AppConfigGroup.Add.class,AppConfigGroup.Update.class})
private String url;// url規則
原因
沒有使用@Validated或者@Valid註解,原因如下:對JavaBean的屬性值進行校驗前會首先判斷是否存在@Validated或者@Valid註解,只有存在才會執行具體的校驗邏輯;
解決方案
待校驗的JavaBean前使用@Validated或者@Valid註解,如下:
###註解說明
@NotEmpty:限制物件不為null且不為空,具體如下:
*<li>{@code CharSequence} (length of character sequence is evaluated)</li> * <li>{@code Collection} (collection size is evaluated)</li> * <li>{@code Map} (map size is evaluated)</li> * <li>Array (array length is evaluated)</li>
其它類似,可通過原始碼檢視具體使用說明;
<dependency>
<groupId>javax.validation</groupId>
<artifactId>validation-api</artifactId>
<version>2.0.1.Final</version>
</dependency>
參考: