spring mybatis缓存问题
用spring/ehcache/mybatis-ehcache
配置了缓存FIFO,
磁盘确实生成了对象的序列化文件,可是每次访问后台还是会打印出查询sql语句,我怎么判断缓存起没起作用呢?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
用spring/ehcache/mybatis-ehcache
配置了缓存FIFO,
磁盘确实生成了对象的序列化文件,可是每次访问后台还是会打印出查询sql语句,我怎么判断缓存起没起作用呢?
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
接受
或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
发布评论
评论(25)
你修改下配置文件:ehcache.xml
回复
额,你先修改下你的ehcache.xml 文件配置,试试看
能解释下特别的地方吗?谢谢哥们儿
是不是参数不一样
是一样的,就是简单的查询列表,我不断刷新,结果都是重新查询
如果缓存起作用了,那么查询语句只会输出一次。。。看看有什么配置没有加的,比如说mapper中的cache设置
回复
@kidbei : 请问这个错误如何解决的,我也遇到同样的错误,没有思路。
回复
注解不会啊,没看过,我直接用的mybatis-ehcache.jar这个包,mybatis自己有缓存接口,这样就不归spring管理缓存了,用spring管理缓存有资料吗?求给份
用注解吧,你这个原因好像是找不到类,用注解,不要指明 implementation 。。。
报异常了: org.apache.ibatis.cache.CacheException: Could not instantiate cache implementation (class org.mybatis.caches.ehcache.LoggingEhcache). Cause: java.lang.reflect.InvocationTargetException
这个包加上没?
回复
这是一个包。。。
ehcache.jar和ehcache-core.jar是什么关系呢?
回复
ehcache.jar是缓存的核心包,mybatis-ehcache.jar相当于是 ehcache与mybatis之间的桥梁。。。
加了,还是一样。。。这俩jar有什么关系?
请问有没有在Mapper中加入这句?
加了,我DEBUG了一下Ehcache类中的get()方法,发现每次请求它get到的都是空,key是有值的。这是什么情况
回复
各种jar包都没少吗?
加了,可是每次都还是出sql语句
关闭数据库也能出数据
回复
没少,少了会报异常的,DEBUG net.sf.ehcache.store.disk.Segment- put added 0 on heap 第一次访问出现了这种信息,后面访问就没有了,只有sql
回复
额,你的缓存配置文件里面是怎么配置的,我记得 ehcache 默认是 0 的。。。
回复
0是啥东西?
如果缓存起作用了,那么查询语句只会输出一次。。。看看有什么配置没有加的,比如说mapper中的cache设置
命中缓存有日志的吧