NutzCN Logo
问答 请教一个 Cache 问题
发布于 2814天前 作者 qq_868910ac 1771 次浏览 复制 上一个帖子 下一个帖子
标签:
         缓存所有
         @Cacheable("product")
         public Object findAll() {
          ...
         }

         根据id 查找
         @Override
         @Cacheable("product")
         public Object find(Long id) {
          ...
         }

         假设 一开始我执行 findAll 将所有数据缓存到product
         然后执行 编辑操作 即执行 find   按理说 是不是应该先去  缓存里查找 没有再查数据库  貌似效果不是这样的 
         是不是理解有误
6 回复

Cacheable是哪里的注解? 哪个jar的?

是 springmvc 项目 用的 ehcache

相关的aop设置没做好?

应该没问题 吧 执行 findAll 是会缓存的 并且再次执行 也不会去查数据库
但是 执行 find(Long id) 的时候他还是会去查数据库 然后你再调用这个方法的时候 就不会去查数据库了
是不是 用 @Cacheable("product") 注解 是不是把该方法的结果集放入缓存 当调用其他注解了@Cacheable("product")的方法 时候
缓存就变了

... 我晕,你以为缓存能共享?? 那是基于方法的缓存,不是基于数据的

好吧 == !!!

添加回复
请先登陆
回到顶部