什么是缓存?
(1).把数据存到内存中, 不需要使用流的方式, 可以直接读取内存中数据
(2).把数据放到内存中, 提供读取效率
1.hibernate框架中提供了很多优化, hibernate 的缓存就是一个优化方法.
2.hibernate 缓存特点:
(2).hibernate 的一级缓存有使用范围.是session的范围, 从session创建到session关闭范围
(2)二级缓存默认不是打开的, 需要配置
(3)二级缓存使用范围, 是sessionFactory范围.
验证一级缓存存在:
(2)其次再根据uid=1查询, 返回对象
//1.根据uid=1查询
//执行了第一个get方法后是否会查询数据库, 是否发送sql语句
User user1 = session.get(User.class, 1);
System.out.println(user1);
//2.再根据uid=1查询
////执行了第二个get方法后是否会查询数据库, 是否发送sql语句
User user2 = session.get(User.class, 1);
System.out.println(user2);
/*
结果:
Hibernate:
select
user0_.uid as uid1_0_0_,
user0_.username as username2_0_0_,
user0_.password as password3_0_0_,
user0_.address as address4_0_0_
from
t_user user0_
where
user0_.uid=?
User [uid=1, username=小王, password=6666, address=日本]
User [uid=1, username=小王, password=6666, address=日本]
*/
第二次执行get方法之后,没有发送sql语句查询数据库
关于hibernate的相关笔记: