0

在同一服务(事务)中合并(更新)同一实体后,我想选择一个实体及其子实体(加入)。我知道合并返回您更新的对象,但该对象具有已更新的数据,而不是所有具有数据库数据的实体。此外,如果在合并后我执行一个选择来尝试获取具有所有子实体的实体,它返回的对象只是更新了数据的对象(其余字段和子实体为空)。

有什么办法可以解决吗?必须在同一个事务中执行所有内容,因为该服务有很多数据库操作必须在提交之前正确执行。

谢谢。问候。

4

1 回答 1

0

这完全取决于您如何构建代码。如果您可以为您要实现的目标提供更多信息/代码,这将有所帮助。

根据您的描述,检查您是否在实体及其子项之间正确设置了级联选项。您可以设置合并操作的级联,这也应该刷新子级。(注意:只有在延迟加载的情况下在合并操作之前获取了任何子项时,这才有效)。

对于您的第二个问题,这再次取决于您如何构建代码,以及您从 db.xml 获取数据的方式。但是,理想情况下,与一个请求/工作单元相关的所有数据库操作都应该在一个事务中处理。

于 2012-05-04T11:49:51.380 回答