配置sql映射文件
<?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">
<!--
namespace:命名空间,它的作用就是对SQL进行分类化管理,可以理解为SQL隔离
注意:使用mapper代理开发时,namespace有特殊且重要的作用
-->
<mapper namespace="edu.ccit.cn.mapper.UserMapper">
<!--
Mybatis默认使用perpetualCache缓存对象 使用二级缓存需要实现cache接口,
perpetualCache继承了接口
-->
<cache type="org.mybatis.caches.ehcache.EhcacheCache"></cache>
<select id="findUserById" resultType="User">
select * from user where id=#{?}
</select>
<select id="findUsers" resultType="User" useCache="false" >
select * from user
</select>
</mapper>
测试
@Test
public void method03_Level2Cache(){
SqlSession sqlSession = ssf.openSession();
UserMapper mapper = sqlSession.getMapper(UserMapper.class);
List<User> users1 = mapper.findUsers();
System.out.println(users1);
sqlSession.close();
SqlSession sqlSession1 = ssf.openSession();
UserMapper mapper1 = sqlSession1.getMapper(UserMapper.class);
List<User> users = mapper1.findUsers();
System.out.println(users);
sqlSession1.close();
}