如何在服务器端创建java级缓存
每当服务器要启动时,我都试图将数据库对象缓存到服务器端的Java对象中
目前,我只是使用静态Hashmap在启动时设置属性,并在用户从GUI更新值时更新属性。无论何时更新值,都很难维护缓存功能
有谁能帮我在java服务器端应用缓存功能吗
你可以在下面搜索框中键入要查询的问题!
每当服务器要启动时,我都试图将数据库对象缓存到服务器端的Java对象中
目前,我只是使用静态Hashmap在启动时设置属性,并在用户从GUI更新值时更新属性。无论何时更新值,都很难维护缓存功能
有谁能帮我在java服务器端应用缓存功能吗
# 1 楼答案
对于简单的缓存,可以使用ehcache。如果JPA实现基于Hibernate,infinispan是正确的选择。infinispan中的分布式缓存比ehcache更好,因为它可以作为单个进程运行(infinispan Hot Rod服务器)
# 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