如何使用JPA/EJB3和WildFly读取未写入的数据?
我已经将传统的enterprize应用程序从EJB2.1迁移到JPA/EJB3,并将JBoss 4.x迁移到WildFly 17 在整个应用程序中,遵循下面提到的模式,由于时间限制,我不打算修改坏模式。在数据库中设置的默认隔离级别为read committed 模式: 启动事务如何使用JPA/EJB3和WildFly读取未写入的数据?,jpa,jboss,wildfly,ejb-3.0,transaction-isolation,Jpa,Jboss,Wildfly,Ejb 3.0,Transaction Isolation,我已经将传统的enterprize应用程序从EJB2.1迁移到JPA/EJB3,并将JBoss 4.x迁移到WildFly 17 在整个应用程序中,遵循下面提到的模式,由于时间限制,我不打算修改坏模式。在数据库中设置的默认隔离级别为read committed 模式: 启动事务 保存数据 通过finder方法读取数据-这要求未提交读取 更新某些内容 提交事务 通过finder方法读取数据-这需要读取未提交的数据才能读取脏数据 在EJB2.1中,这是通过只读bean处理的,我在将应用程序迁移到JP
保存数据
通过finder方法读取数据-这要求未提交读取
更新某些内容
提交事务 通过finder方法读取数据-这需要读取未提交的数据才能读取脏数据
在EJB2.1中,这是通过只读bean处理的,我在将应用程序迁移到JPA时删除了这些bean 在不修改此处使用的代码模式的情况下可以实现这一点吗
谢谢你的帮助 我将在数据源级别设置隔离级别因为我使用JBoss,它使用hibernate作为实体管理器,我将bean从JPA解包到hibernate会话,然后将实体从hibernate分离,使其成为只读的 这并没有完全解决问题,我确实在应用程序中缓存了一些对象,每当需要只读bean时,缓存就是第一个要查找的地方