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();

    }

三、提高效率的方案

   方案一:通过缓存,提高查询效率

  Hibernate框架(12) —— Hibernate一级缓存_第1张图片

    方案二:减少不必要的修改语句发送

    Hibernate框架(12) —— Hibernate一级缓存_第2张图片

你可能感兴趣的:(Hibernate框架)