[英]Force clear EJB3 cache in Glassfish
我有使用EJB3 + Toplink用Java编写的应用程序。 我正在使用Glassfish作为我的应用程序。 服务器。
有时已缓存的数据很旧,我需要手动清除缓存。 我知道我们可以设置时间清除它,但是我想创建一个按钮来手动为我清除它。 有可能吗?
显然,您可以使用以下代码查询数据库来刷新缓存:
Query query = em.createQuery(sql.toString()).setHint("toplink.refresh", "true");
这对我有用。
我认为最好使用:
em.createNamedQuery("findAll").setHint(QueryHints.CACHE_RETRIEVE_MODE, CacheRetrieveMode.BYPASS).getResultList();
它对我有用,我认为这是更标准的方法。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.