我有2张桌子A和B. 和一个关联表AB
A是一个到AB的一个, B是一个到AB的一个,
我关闭了eclipselink的缓存。使用
<property name="eclipselink.query-results-cache" value="false"/>
<property name="eclipselink.cache.shared.default" value="false"/>
我从一个线程更新A,这意味着在一个entityManager中更新A
并使用entityManager.find(B.class,id)
获取B并使用entityManager.refresh(B)
以强制从另一个线程(另一个entityManager)中的DB读取B的数据
但是当我尝试使用B.getABlist()来获取A&#39的信息时 A的信息不是DB中的最新信息
所以我的问题是,我的手术有什么问题。
谢谢
答案 0 :(得分:0)
我发现了问题
我忘记在AB实体中设置CascadeType.REFRESH以获得与A和B的两个ManyToOney关系
所以刷新不起作用