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 分组校验
相关推荐
秦苒&4 分钟前
【C语言指针二】从入门到通透:核心知识点全梳理(野指针,assert断言,指针的使用和传址调用,数组名的理解和使用指针反访问数组)
c语言·开发语言
是梦终空7 分钟前
JAVA毕业设计253—基于Java+Springboot+vue3+协同过滤推荐算法的传统服饰文化平台(源代码+数据库+任务书+12000字论文)
java·spring boot·vue·毕业设计·课程设计·协同过滤推荐算法·传统服饰文化平台
Y1rong4 小时前
C++ QT之记事本
开发语言·qt
HerayChen7 小时前
HbuilderX 内存溢出报错
java·大数据·linux
diegoXie8 小时前
Python / R 向量顺序分割与跨步分割
开发语言·python·r语言
程序员小白条8 小时前
0经验如何找实习?
java·开发语言·数据结构·数据库·链表
liulilittle8 小时前
C++ 浮点数封装。
linux·服务器·开发语言·前端·网络·数据库·c++
小马爱打代码8 小时前
Spring AI:搭建自定义 MCP Server:获取 QQ 信息
java·人工智能·spring
郭涤生8 小时前
QT 架构笔记
java·数据库·系统架构
daidaidaiyu8 小时前
基于LangGraph开发复杂智能体学习一则
java·ai