Hibernate框架(12) —— Hibernate一级缓存
一、引言
1.缓存:提高缓存。
2.Hibernate的一级缓存是为了提高操作数据库的效率。
二、证明一级缓存存在
import org.hibernate.Session
public class Demo {
@Test
public void function(){
1.获得session
Session session= HibernateUtils.openSession();
2.控制事务
Transaction tx =session.beginTransaction();
3.执行操作
获取ID为1的Customer对象,在一个session内连续获取5次。
Customer c1 = session.get(Customer.class, 1L);
Customer c2 = session.get(Customer.class, 1L);
Customer c3 = session.get(Customer.class, 1L);
Customer c4 = session.get(Customer.class, 1L);
Customer c5 = session.get(Customer.class, 1L);
结果:只查询了一次。
System.out.println(c3==c4);//true
4.提交事务。关闭资源
tx.commit();
session.close();
}
三、提高效率的方案
方案一:通过缓存,提高查询效率
方案二:减少不必要的修改语句发送