SpringMVC@NotEmpty等注解不生效

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/yangguosb/article/details/84926529

现象

  表单数据对应的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;

猜你喜欢

转载自blog.csdn.net/yangguosb/article/details/84926529
今日推荐