【发布时间】:2011-02-17 19:27:42
【问题描述】:
我正在使用 Eclipselink 开发一个应用程序,作为应用程序的一部分,我需要能够操作一些涉及更改数据的对象,而不会将其持久化到数据库中(我为某些批处理生成过程合并/更改对象) .
我不愿意更改 Entity 对象中的数据,因为即使我没有将方法标记为 @Transactional,也有可能在将来无意中从事务方法中调用此方法,而这些更改可以持久化。
所以我的问题是,有没有办法解决这个问题?例如强制方法始终是非事务性的;方法一启动就终止任何事务性;等等
我知道有一个 .detach() 方法可以从实体管理器中分离对象,但是,有很多对象,这在我的代码中似乎是一个潜在的容易出错的故障安全。
【问题讨论】:
-
标记spring或ejb
标签: jpa transactions eclipselink