我的用例是我想在我的服务调用者类中缓存某些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,并正在寻找基于注释的解决方案
答案 0 :(得分:3)
Spring缓存不支持开箱即用(Supported Cache Providers)的Memcached。
如果您想在项目中使用Memcached,请签出Memcached Spring Boot缓存库。
还有example Java project,介绍如何在Spring中使用Memcached。
答案 1 :(得分:0)
您不需要memcached类。按照baeldung教程,只需将@Cacheable
批注放在Abc.serviceCall上即可。