【问题标题】:How to switch off Apache Olingo OData 2.0 caching?如何关闭 Apache Olingo OData 2.0 缓存?
【发布时间】:2014-12-10 17:57:58
【问题描述】:

如何关闭 Apache Olingo 2.0 缓存?

Web 应用程序在 Tomcat 7 中运行并使用 MySQL。它基于 Apache Olingo OData JPA 处理器构建。

当我更新数据库中的数据记录时,我可以通过这种请求正确找到该数据记录:“GET /interactive-riga-odata/webservices.svc/Statuss?$filter=(Updated%20gt%20datetime% 272014-10-15T12:25:44.054%27) HTTP/1.1"

问题是,我正在缓存此数据记录的先前版本,即使在过滤请求期间它是根据新值选择的。

【问题讨论】:

    标签: tomcat caching odata olingo


    【解决方案1】:

    原来必须禁用或清空 EclipseLink ORM 缓存。

    可以通过在模型文件中添加注释来禁用它,如下所示:

    @Entity
    @Cacheable(false)
    public class Employee {
    

    或者将这些行之一放入persistance.xml 文件中:

    <property name="eclipselink.cache.shared.default" value="false"/>
    
    <shared-cache-mode>NONE</shared-cache-mode>
    

    如果尝试使用数据缓存创建解决方案,可以使用某些 Web 服务在数据库发生某些更改后触发缓存失效(管理界面应用 ping Web 服务以让他们知道 MySQL 数据已更改)。

    【讨论】:

      猜你喜欢
      • 2022-01-02
      • 2016-01-19
      • 2016-11-14
      • 2015-12-09
      • 2016-03-18
      • 2021-01-15
      • 1970-01-01
      • 2016-02-04
      • 1970-01-01
      相关资源
      最近更新 更多