1. 程式人生 > >[email protected]等註解不生效

[email protected]等註解不生效

現象

  表單資料對應的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>

參考:

  1. https://blog.csdn.net/qq_35992900/article/details/80068680;