SpringBoot在同一类中方法内部调用缓存方法Cacheable注解无效的问题

欢迎查看Eetal的第七篇博客–Cacheable注解

SpringBoot的Cacheable注解 开启缓存
注解于方法上
形如

@Cacheable(“user”)
public User getById(int id) {
System.out.println(“come in with id : “+id);
return userDao.getOne(id);
}

则此方法的代理对象会具备缓存
意思即,除了同一类中的方法对此方法的调用,其他方法的调用,结果都会存储一个user名称的缓存,
根据方法参数优先查找该缓存,具备对应缓存则不会执行下面的方法
注解于类上则应用于所有方法

至于为什么同类无效,时候因为spring的Cache是通过Aop代理对象来实现的
所以如果是同类中方法调用,在Aop生成代理对象时,其实只是加载代码,也可以看做一个小漏洞吧

更多精彩内容

请移步

个人主页: yangyitao.top