gpt4 book ai didi

hibernate - Hibernate的@Version可以考虑相关实体的变化吗?

转载 作者:行者123 更新时间:2023-12-02 23:04:17 25 4
gpt4 key购买 nike

我有 2 个实体:一对多关系中的ParentChildParent 是有版本的,即有一个 @Version 字段。我的目标是同步对 Parent 版本上的 ParentChild 实体的更改。

例如一个线程更新父级,另一个线程更新其中一个子级,这应该会导致 OptimisticLockException。

可能吗?

我尝试向 Child 添加 @PreUpdate,这会增加其 Parent 的版本,但这没有帮助,因为 Hibernate 似乎只在它之后执行监听器检查版本,以便事务无论如何都能成功提交。

如果可以的话,如何实现?

最佳答案

您是否尝试将子对象设为组件而不是实体

默认的 Hibernate 操作可能更符合您的要求。这个想法是,父级是一个真实的实体,而子级被认为是一个更大整体的元素。

在 Hibernate 中,这应该被视为默认的父子关系。实体之间的父子关系虽然可能,但不太自然。

关于hibernate - Hibernate的@Version可以考虑相关实体的变化吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1399679/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com