Mybatis缓存的学习内容

MyBatis支持声明式数据缓存,当一条SQL语句被标记为“可缓存”后,首次执行它时从数据库获取的所有数据会被存储在一段高速缓存中,今后执行这条语句时就会从高速缓存中读取结果,而不是再次从数据库中取。这就是MyBatis一级缓存,一级缓存的作用域scope是SqlSession。MyBatis同时还提供了一种全局作用域Global scope的缓存,这也叫做二级缓存,也称作全局缓存。

一级缓存:在同个SqlSession中,查询语句相同的sql会被缓存,但是一旦执行新增或更新或删除操作,缓存就会被清除。

二级缓存:二级缓存在SqlSession关闭或提交之后才会生效。

你可能感兴趣的:(mybatis)