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 分组校验
相关推荐
能摆一天是一天几秒前
Spring ai vectorstore 使用本地模型导致只能匹配可行度为1.0的内容的解决方法笔记
java·笔记·spring
我命由我1234518 分钟前
方差(实例实操、与标准差的区别)
java·数据结构·算法·数据分析·java-ee·intellij-idea·idea
Java内核笔记18 分钟前
Spring Security 源码解析(八)方法安全授权与自定义扩展:@EnableMethodSecurity、AOP、SpEL 全链路
java·后端
自由的裙子19 分钟前
How-To: Using the N* Stack, part 4
java·jvm·oracle
逝水无殇27 分钟前
C# 枚举(Enum)详解
开发语言·后端·c#
nianniannnn39 分钟前
c++复习自存--标准模板库STL
开发语言·c++·windows
努力努力再努力wz1 小时前
【高性能网络库与HTTP Server系列】:基于主从 Reactor 模型实现高性能 C++ 网络库与 HTTP Server
开发语言·网络·数据结构·数据库·c++·网络协议·http
什巳1 小时前
JAVA练习275-乘积最大子数组
java·开发语言·数据结构·算法
lang201509281 小时前
Apache POI Word(docx) 实战教程:从入门到精通表格合并、图片插入与文档合并
java·开发语言·word
小牛不牛的程序员1 小时前
利用Claude Code构建自动化需求挖掘工具:从原理到实践
java·算法·自动化