0
我正在使用JDBC。我有数据库密集型计算,我想缓存结果。Java缓存查询结果
我正在使用HashMap<String, ResultSet>
来缓存结果。但是,该程序通常会给出OutOfMemory异常,因为缓存变得太大。
有关更好的数据结构/缓存接口的使用建议?
我正在使用JDBC。我有数据库密集型计算,我想缓存结果。Java缓存查询结果
我正在使用HashMap<String, ResultSet>
来缓存结果。但是,该程序通常会给出OutOfMemory异常,因为缓存变得太大。
有关更好的数据结构/缓存接口的使用建议?
首先,不要缓存ResultSet
,用数据创建一些域对象,然后缓存它们。
其次,使用某种类型的缓存框架来清除未使用的旧条目。我最喜欢的是Guava Cache,因为它在代码中很容易配置,但另一个流行的是Ehcache。
谢谢,会看着他们。 – MFARID