MyBatis快取策略之二級快取
阿新 • • 發佈:2018-12-31
// 建立代理物件
UserMapper userMapper1 = sqlSession1.getMapper(UserMapper.class);
// 第一次發起請求,查詢id為1的使用者
User user1 = userMapper1.findUserById(1);
System.out.println(user1);
//這裡執行關閉操作,將sqlsession中的資料寫到二級快取區域
sqlSession1.close();
//sqlSession3用來清空快取的,如果要測試二級快取,需要把該部分註釋掉
//使用sqlSession3執行commit()操作
UserMapper userMapper3 = sqlSession3.getMapper(UserMapper.class);
User user = userMapper3.findUserById(1);
user.setUsername("張三");
userMapper3.updateUser(user);
//執行提交,清空UserMapper下邊的二級快取
sqlSession3.commit();
sqlSession3.close();
UserMapper userMapper2 = sqlSession2.getMapper(UserMapper.class);
// 第二次發起請求,查詢id為1的使用者
User user2 = userMapper2.findUserById(1);
System.out.println(user2);
sqlSession2.close();
}