微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

即使仅使用父类,Hibernate 自定义验证也会在继承类上触发

如何解决即使仅使用父类,Hibernate 自定义验证也会在继承类上触发

我有一个使用 hibernate 5 的应用程序,它对继承的类进行了休眠验证,例如:

父类

public class ParentPojo {

    private String parentField1;
    private String parentField2;
    // ...
}

继承类

@SomeCustomClassValidation 
public class inheritedPojo extends ParentPojo {
    @ValidNumber
    private String number;
    // ...
}

在我只创建然后保存父对象(在本例中为 ParentPojo)的事务之一中,出于某种原因,我看到一个问题,即当我的事务结束时 BeanValidationEventLisenter 调用对继承类的验证课程失败,因为从未创建继承的类。我一直在网上浏览其他文章和文档,试图找出可能是什么原因,并找出我是否遗漏了我需要配置的内容以确保验证只发生在被持久化的对象上/在交易中受到影响。

如果应用程序使用 hbm 文件,休眠事件侦听器是否会根据 hbm 文件决定验证哪些类?我想它会知道,因为只有 .save() 为 ParentPojo 被调用,它会知道只在这个类上查找验证。
任何帮助将不胜感激!

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。