spring - 即使仅使用父类,也会在继承的类上触发 Hibernate 自定义验证
问题描述
我有一个使用休眠 5 的应用程序,它对继承的类进行休眠验证,例如:
家长班
public class ParentPojo {
private String parentField1;
private String parentField2;
// ...
}
继承类
@SomeCustomClassValidation
public class inheritedPojo extends ParentPojo {
@ValidNumber
private String number;
// ...
}
在我仅创建然后保存父对象(因此在此示例中为 ParentPojo)的事务之一中,由于某种原因,我看到一个问题,即当我的事务结束时 BeanValidationEventLisenter 调用继承类的验证,这当然会失败,因为从未创建继承的类。我一直在网上浏览其他文章和文档,试图找出可能的原因,并找出我是否缺少需要配置的东西,以确保仅在持久化的对象上发生验证/在交易中受到影响。
如果应用程序使用它们,休眠事件侦听器是否会根据 hbm 文件决定验证哪些类?我想它会知道,因为只有 .save() 被调用为 ParentPojo 它会知道只在这个类上寻找验证。
任何帮助,将不胜感激!
解决方案
推荐阅读
- php - WordPress:get_post_status 需要很长时间
- sql - 我的关于 SQL Pivot 函数的脚本有什么错误?
- vba - 使用子文件夹名称自动分类电子邮件
- google-sheets-api - 使用 gspread 对谷歌电子表格的读取请求出现错误 500
- rust - 是 Vec 中的数据吗
总是密密麻麻? - javascript - 尝试替换构造函数变量时出错
- java - 从kafka主题读取时如何验证无效的分区名称
- php - Twig - 带有 3 个操作数的“for”语法,这是什么意思
- android - 有什么方法可以检测 Android TV Leanback 中键盘的可见性
- ios - WKWebView canGoForward 总是返回 false swift 5