我需要通过从数据库中读取 xml 来缓存 xml bean java 对象。我在内存中使用 HashMap 来维护我的 java 对象。我正在为 DI 和 Weblogic 11g 应用服务器使用 spring。
您能否建议我在 xml 文件中有更新时重新加载缓存的机制。
我需要通过从数据库中读取 xml 来缓存 xml bean java 对象。我在内存中使用 HashMap 来维护我的 java 对象。我正在为 DI 和 Weblogic 11g 应用服务器使用 spring。
您能否建议我在 xml 文件中有更新时重新加载缓存的机制。
为此,您可以使用 weblogic p13n 缓存,而不是使用自己的 HashMap 来缓存 java 对象。您必须为您的缓存配置 p13n-cache-config.xml 文件,其中包含 TTL、最大值等。
来到第一点,缓存将在 TTL 时间完成后自动重新加载。对于手动清除缓存,您可以实现一种 Servlet 类型的东西,您可以直接从浏览器中点击它(可以将其限制为特定的 URL)。在该 servlet 中清除要重新加载的缓存。
weblogic p13n 缓存还为您提供了集群感知缓存清除的方法,如果您需要它,如果您想使用自己的 HashMap 进行缓存,请为该 HashMap 提供更新方法并清除您想要重新加载的 java 对象然后调用缓存创建方法。