阅读Spring 3.1中的新Cache Abstraction,我想将此功能应用于我的项目。
我可以将调用缓存到没有参数的方法吗?
@Cacheable("xCache")
public List<X> loadAllX() {
...
}
链接的博客文章
使用方法参数
作为关键字执行缓存查找
所以不应该缓存这个方法,对吗?
简答:是的,没有任何参数的方法将像其他任何方法一样进行缓存。我猜这个方法的缓存中只有一个条目。
答案 0 :(得分:10)
您可以使用“ Cache SpEL available metadata ”覆盖此行为,如下所述:
在您的示例中,您可以指定以下内容:
@Cacheable(value = "xCache", key = "#root.methodName")
public List<X> loadAllX() {
...
}
哪个会使用键“loadAllX”
缓存“xCache”中的X列表