一級緩存與二級緩存
- Mybatis 中默認開啓一級緩存,二級緩存需要手動開啓
Mybatis 中的緩存
開啓二級緩存
配置相關的Mapper映射文件:添加 cache 標籤
- 標籤表示當前這個 mapper 映射將使用二級緩存,區分的標準就看 mapper 的 namespace 值。
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.itheima.dao.IUserDao">
<cache></cache>
</mapper>
配置 statement 上面的 useCache 屬性
- 將 UserDao.xml 映射文件中的標籤中設置 useCache=”true”代表當前這個 statement 要使用
二級緩存,如果不使用二級緩存可以設置爲 false。
- 注意:針對每次查詢都需要最新的數據 sql,要設置成 useCache=false,禁用二級緩存。
<select id="findById" resultType="user" parameterType="int" useCache="true">
select * from user where id = #{uid}
</select>