java - Spring中缓存方法最简单/最透明的方式是什么?

标签 java spring caching

如果我有一堆带有一堆 getXXX 方法的 DAO,并且我想要缓存所有或一些显式方法列表,有什么方法可以使用 Spring 透明地完成此操作吗?

我不想要的是:

  • 更改任何源代码/添加 注释
  • 必须手动为多个 DAO 创建多个代理 Bean 并重新连接它们。

理想情况下,使用正则表达式来匹配 DAO 以及缓存方法,并根据需要自动将其自身包装在 DAO 周围。

我们正在使用 OSCache,所以有一个例子就太好了。

最佳答案

您可以使用@Cacheable注释和 AOP 方面来自 jcabi-aspects :

@Cacheable(lifetime = 5, unit = TimeUnit.SECONDS)
public String load(URL url) {
  return url.openConnection().getContent();
}

关于java - Spring中缓存方法最简单/最透明的方式是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1192409/

相关文章:

java - Spring 可选参数 int

spring - 为什么使用 HttpServletRequest 向浏览器发送响应?

ios - Swift:在 UITable-View 中加载图像

java - MarkupFactory - 未找到标记,如何调试 ResourceStreamLocator?

java - 如何使用 @ConversationScoped 处理多个支持 bean?

java - Resttemplate 等效/curl -T 或 --upload-file 选项的映射

c# - ASP.net 缓存 ASHX 文件服务器端

php - 如何在php中正确缓存文件

java - 从服务器向客户端发送消息

java - J2me RecordStore 错误 : java. lang.NullPointerException: 0 - 下面的代码有什么问题