Spring缓存/后备框架

时间:2018-06-20 11:50:17

标签: java spring spring-boot caching

我的用例是我想在我的服务调用者类中缓存某些request:response:

public class Abc{
  public Response serviceCall(Request r){}
}

public class Memcached{
 public Response get(Request r){}

public void put(Request r, Response rs){}
}

我想使用memcached进行缓存。请求将是键,值将是响应。每当调用serviceCall()时,我都要检查缓存中是否已经存在请求,然后从缓存中返回响应。 如果没有,则实际执行serviceCall()方法并将request:response key:value放入memcached

春季有什么方法可以实现同样的目标。

我确实在这里{@ 3}看了@Cacheable

但是我无法理解我如何使Spring使用我的“ Memcached”类,更具体地说,我在哪里连接“ Memcached”类,以便在上面的示例中将其用于“ Abc”类

可以帮忙吗?我正在使用完全基于注释的Spring Boot,并正在寻找基于注释的解决方案

2 个答案:

答案 0 :(得分:3)

Spring缓存不支持开箱即用(Supported Cache Providers)的Memcached。

如果您想在项目中使用Memcached,请签出Memcached Spring Boot缓存库。

还有example Java project,介绍如何在Spring中使用Memcached。

答案 1 :(得分:0)

您不需要memcached类。按照baeldung教程,只需将@Cacheable批注放在Abc.serviceCall上即可。