什么是缓存?

将数据存放在程序内存中,提升读写速度。
mybatis提供缓存,用于减轻数据查询的压力,提高性能。

一级缓存:sqlSession级别的缓存

查询blog1的时候,向数据库发送了SQL语句,但是查询blog2的时候,没有想数据库端发送SQL语句,而是从缓存中查询得到 注意:
1.数据被修改(insert/update/delete)的时候,一级缓存会清空

2.手动清空缓存session.clearCache();

二级缓存:sqlSessionFactory级别的缓存

使用二级缓存:核心配置文件加入cacheEnabled为true

使用二级缓存的注意事项:
  1.使用二级缓存的映射类要实现序列化:二级缓存的存储介质不一定在内存,实现序列化之后,存储的对象可以存放在远程服务器
  2.要将数据刷入二级缓存的时候,调用session.close()
  3.使用插入后,二级缓存也会被清空
  4.禁用二级缓存(useCache),一级缓存是没有被禁止的
  5.设定是否刷新二级缓存(flushCache),一级缓存在做插入的时候必然会被清空

EHCache配置

引入jar包

配置xml文件

设定缓存类型为ehcache

ps:因作者能力有限,有错误的地方请见谅

  • 喜欢这篇文章的话可以用快捷键 Ctrl + D 来收藏本页

最后更新: 2018年09月19日 15:52

原始链接: https://blog.hdqyf.club/2018/04/03/20180403-mybatis学习日记—缓存/

× 请我吃糖~
打赏二维码