【发布时间】:2018-12-20 14:13:43
【问题描述】:
我有一个无状态的 EBJ,我正在使用 JPA 来管理数据库交互。以下是我需要您帮助的场景。
- EJB 收到获取数据的调用 (getCustomer())。
- GetCustomer 用于使用 JPA 从数据库中读取客户实体。
- 客户实体有一种从属性中删除空格的方法。这是用@PostLoad 注释的。基本上,这会修改持久性上下文中的实体。
现在,当向客户端发送响应时(事务完成后),它会触发更新 SQL 到数据库以更新数据集(在步骤 3 中修改)。
如果你能看到这个操作,它本质上是只读的。但是由于我的数据有很多空格,因此我必须在实体对象中对其进行修剪。但是这种方法会触发更新 SQL,这不是预期的。
能否请您告诉我解决此问题的最佳方法或如何隔离和同步)EJB tx 和 JPA tx。
【问题讨论】:
标签: java jpa transactions ejb