SpringMVC@NotEmpty等注解不生效

现象

  表单数据对应的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且不为空,具体如下:

 *
  • {@code CharSequence} (length of character sequence is evaluated)
  • *
  • {@code Collection} (collection size is evaluated)
  • *
  • {@code Map} (map size is evaluated)
  • *
  • Array (array length is evaluated)
  • 其它类似,可通过源码查看具体使用说明;

    
          javax.validation
          validation-api
          2.0.1.Final
        
    

    参考:

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

    你可能感兴趣的:(Spring)