在JPA持久化后,UI中的值不会刷新,缓存相关

时间:2012-02-05 17:31:54

标签: caching jpa

我正在使用JSF和JPA开发电子商务java eneterprise applciation。 当我在篮子中添加项目时,我可以看到它们已添加到数据库中,但未显示的是从数据库中获取的篮子项目列表。在第二次访问时,我看到更新的valuse。似乎它正在缓存价值观。

我想在没有缓存的情况下不断刷新值。有谁知道怎么做?

2 个答案:

答案 0 :(得分:1)

您可以在篮子中添加内容时清除缓存,或者您可以调整为不对负责篮子的实体进行操作。

如果您使用EclipseLink;

1-您可以将此anotation用于购物篮实体

 @Cache(alwaysRefresh=true) 

2-或者您可以使用

刷新所有缓存
em.getEntityManagerFactory().getCache().evictAll();

但如果您不使用eclipseLink,我认为您的平台上有相同的解决方案

答案 1 :(得分:1)

感谢大家! 我找到了一个解决方案:我在persistence.xml中将共享缓存模式设置为None