java 校验框架 - Bean Validation 级联校验

目录

什么是级联校验:

简单理解就是对于一个校验类中还存在其他校验。以Order 类为例,如果它的内部还有一个 Bean, 且该 Bean 不能未空,或者它内部的属性也需要被校验,这就是一种级联校验。

级联校验主要通过 @Valid来实现的。

上代码

Order class

java 复制代码
public class Order {
    @Valid // 级联校验
    @NotNull(message = "地址不能为空") // 不是必须,建议写
    private Address address;
}

Address class

java 复制代码
public class Address {
    @NotBlank(message = "地址城市信息不能空a")
    private String city;
}

如上代码,Address 是一个独立的 Bean,而它作为 Order 的一个属性出现。当我们对 Order 进行操作时,需要对属性 Address 做校验。校验的写法根据实际业务场景来调整即可。校验方式与以往没有不同。

参考:

  1. java 校验框架 - Bean Validation
  2. java 校验框架 - Bean Validation 分组校验
相关推荐
江奖蒋犟12 小时前
【C++】map和set
开发语言·数据结构·c++·set·map
白杆杆红伞伞12 小时前
Qt Event
开发语言·qt
Magic--12 小时前
Qt 桌面计算器项目
开发语言·qt
李昊哲小课12 小时前
Python办公自动化教程 - 第2章 单元格样式魔法 - 让表格变得美观专业
开发语言·python·excel·openpyxl
希望永不加班12 小时前
SpringBoot 定时任务:@Scheduled 基础与动态定时
java·spring boot·后端·spring
派大星酷12 小时前
跨域是什么 有什么影响 怎么解决
java·网络
CV艺术家12 小时前
mysql数据迁移到达梦数据库
java·数据库
张健115640964812 小时前
QT创建线程
开发语言·qt
鲸渔12 小时前
【C++ 输入输出】cin、cout、cerr 与格式化输出
开发语言·c++·算法
wuqingshun31415912 小时前
说一下mybatis里面#{}和${}的区别
java·spring·mybatis