
上述图片中,同一个类中genLiveBullets()方法调用同类中的queryLiveByRoom()方法,这样即便标识了Cacheable标签,再次调用时也没有走缓存。
cacheable不支持内部方法调用的方式,需要修改为把请求缓存的改成service方式,Aservice中的genLiveBullets()调用Bservice中的queryLiveByRoom()
见下图,已测试再次调用时为走的缓存。
@Cacheable(value = "PERSON",key = "#tagId+'_'+#zz") public List<Person> getPersonByTagid(Long tagId,String zz)
以上为个人经验,希望能给大家一个参考,也希望大家多多支持。