如何解决@NotBlank不生效的问题
作者:Eddie-Wang 时间:2022-04-01 13:41:08
解决@NotBlank不生效
在项目开发中,发现一个类中包含有另外一个类,这种包含关系的类上的@NotBlank校验不生效,后来发现需要在内部的类的域上加上@Valid注解,如下:
/**
* 标签体系ID
*/
@NotBlank(message = "00000002")
@Length(max = 20, message = "00000005")
private String systemId;
/**
* 条件模板id
*/
private String templateId;
/**
* 条件模板代码
*/
private String templateCode;
/**
* 条件模板名称
*/
@NotBlank(message = "00001001")
@Length(max = 20, message = "00001002")
private String templateName;
/**
* 条件表达式
*/
@NotBlank(message = "00001003")
@Length(max = 200, message = "00001004")
private String templateConditionExpr;
/**
* 排序
*/
private Integer sort;
/**
* 条件模板字段数据
*/
@Valid
@NotEmpty(message = "00001005")
private List<PotentialConColParam> conTemplatesCols;
/**
* 标签代码
*/
@NotBlank(message = "00001006")
@Length(max = 64, message = "00001007")
private String labelCode;
/**
* 条件名称
*/
@NotBlank(message = "00001008")
@Length(max = 20, message = "00001009")
private String conditionName;
/**
* 操作符
*/
@NotBlank(message = "00001010")
@Length(max = 20, message = "00001011")
private String operation;
/**
* 条件赋值
*/
@NotBlank(message = "00001012")
@Length(max = 20, message = "00001013")
private String conditionValue;
@NotBlank @NotEmpty不生效,以及对象嵌套问题
问题1:
最近做一个新项目,写新接口时发现@NotBlank @NotEmpty不生效,@NotNull则生效,令人费解。通过搜索资料以及对项目依赖一步步排除发现项目中引入的jar包有问题,见红色标识出来的
删除以上3个jar,新增org.hibernate后问题解决
用法:
step1、Controller层接口入参处加@Validated注解(org.springframework.validation.annotation包的)
step2、入参对象的属性上加@NotBlank 或@NotEmpty 或 @NotNull --均来自于javax.validation.constraints包下, 三者区别可百度
问题2:
循环嵌套问题,入参对象bean中 属性也为javabean对象,也希望子对象中的属性能够被校验
用法: 在子对象属性上面加@Valid 注解即可
来源:https://blog.csdn.net/wangchaox123/article/details/94642774
标签:@NotBlank,不生效
![](/images/zang.png)
![](/images/jiucuo.png)
猜你喜欢
Spring @Conditional通过条件控制bean注册过程
2023-08-06 10:00:11
移动开发Spring Boot外置tomcat教程及解决方法
2023-08-25 11:47:33
Spring @Profile注解详解
2023-04-20 06:26:16
一键清除maven仓库中下载失败的jar包的实现方法
2023-08-13 03:43:59
![](https://img.aspxhome.com/file/2023/4/58174_0s.png)
C#调用VB进行简繁转换的方法
2023-02-25 23:19:43
spring缓存cache的使用详解
2023-03-28 11:36:14
![](https://img.aspxhome.com/file/2023/8/65328_0s.png)
通过Java修改游戏存档的实现思路
2023-07-30 20:10:55
![](https://img.aspxhome.com/file/2023/7/75517_0s.jpg)
Java加载资源文件时的路径问题的解决办法
2023-05-09 23:22:40
Java IO流—异常及捕获异常处理 try…catch…finally
2023-03-14 07:35:52
![](https://img.aspxhome.com/file/2023/1/62401_0s.png)
Java使用Maven BOM统一管理版本号的实现
2023-08-30 00:46:00
mybatis中批量插入的两种方式(高效插入)
2023-09-16 22:21:07
Android开发中Toast显示消息的方法小结
2023-07-31 20:29:14
java.lang.StackOverflowError出现的原因及解决
2022-03-21 08:12:21
![](https://img.aspxhome.com/file/2023/8/77148_0s.jpg)
DevExpress之ChartControl实现柱状图演示实例
2023-05-27 08:45:15
![](https://img.aspxhome.com/file/2023/4/81054_0s.png)
java排序算法之冒泡排序
2023-04-05 21:03:42
![](https://img.aspxhome.com/file/2023/7/72637_0s.gif)
Java权重随机的实现方法
2021-10-05 14:27:50
Android自定义View之组合控件实现类似电商app顶部栏
2023-07-26 22:14:10
![](https://img.aspxhome.com/file/2023/3/84713_0s.png)
spring boot实现过滤器和拦截器demo
2023-08-24 07:15:01
IDEA自定义常用代码块及自定义快捷摸板
2022-01-13 18:54:22
![](https://img.aspxhome.com/file/2023/6/77996_0s.png)
大白话讲解C# 中的委托
2023-02-03 02:06:41
![](https://img.aspxhome.com/file/2023/0/69200_0s.jpg)