使用Spring进行数据库缓存并能够查询它

时间:2013-10-04 16:11:29

标签: java spring caching jdbc jdbctemplate

所以,我有一个使用Spring框架和JDBCtemplate的Java EE应用程序。而且,我的应用程序必须在同一个数据库(这是一个Postgres数据库,但由于一堆原因而没有规范化)但是使用不同的sql语句(不同的where子句)上执行几个JDBC数据库读取请求(没有/很少写入)。因此,在这种情况下,我希望能够缓存数据库并能够在缓存上运行查询,从而节省了昂贵的JDBC调用。因此,请建议适当的工具或框架或任何其他解决方案。

2 个答案:

答案 0 :(得分:0)

您可以根据您使用的查询参数开始使用简单的地图。更可行的解决方案是使用ehcache。

答案 1 :(得分:0)

如果使用Spring 3.1或更高版本,则可以在方法上使用@Cacheable。您需要在应用程序上下文配置中包含<cache:annotation-driven />。对于简单的情况,您可以使用spring的ConcurrentCacheFactoryBean作为缓存管理器。对于更复杂的情况,您可以通过spring的ehcache适配器使用ehcache。使用@CacheEvict重置缓存。