有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

如何在服务器端创建java级缓存

每当服务器要启动时,我都试图将数据库对象缓存到服务器端的Java对象中

目前,我只是使用静态Hashmap在启动时设置属性,并在用户从GUI更新值时更新属性。无论何时更新值,都很难维护缓存功能

有谁能帮我在java服务器端应用缓存功能吗


共 (2) 个答案

  1. # 1 楼答案

    对于简单的缓存,可以使用ehcache。如果JPA实现基于Hibernate,infinispan是正确的选择。infinispan中的分布式缓存比ehcache更好,因为它可以作为单个进程运行(infinispan Hot Rod服务器)

  2. # 2 楼答案

    Ehcache是最好的方法之一。它带有一个默认配置,可以在几分钟内完成并在应用程序中使用

    CacheManager.getInstance().addCache("test");将创建一个带有名称测试和defualt属性的缓存

    添加一个对象很容易,你需要创建一个带有key和value的net.sf.ehcache.Element,并将其放入缓存。 CacheManager.getInstance().getCache("test").put(new Element(key, value));

    然后从缓存中取回也类似,您只需要get(key);

    如果你的应用程序中有spring,你的生活就更简单了。可以在方法上添加@Cacheble注释来缓存返回值。您可以从spring文档中找到很多帮助

    默认情况下,配置将有120秒的到期时间。这意味着你放入缓存的任何对象都将在120秒后过期并删除。你可以通过拥有自己的缓存来增加/调整这一点。xml