我正在使用EclipseLink作为我的JPA提供程序。 当我在查询对象上使用以下代码时:
myQuery.setHint("eclipselink.read-only", "true");
查询在与原始EntityManager使用的连接不同的连接上执行,并返回错误的结果 将查询设置为只读会导致EclipseLink在不同的连接上运行它是否有意义? (我正在使用连接池) 另外我在persistence.xml中添加了:
<shared-cache-mode>NONE</shared-cache-mode>
禁用跨会话缓存。
答案 0 :(得分:1)
只读查询仅用于显示读取提交的数据。如果您需要事务性数据,则不应使用只读。
您可以使用独占连接,(持久性单元或持久性上下文属性)
“eclipselink.jdbc.exclusive-connection.mode”= “始终”