Hibernate会话和事务

时间:2015-09-06 06:13:34

标签: java hibernate transactions

我试图弄清楚hibernate是如何工作的,我想知道它们的工作原理很少,我想知道我是否理解正确。

EntityManagerFactory emf = Persistence.createEntityManagerFactory();

以上做了以下事情

  1. 创建entitymanager工厂实例。
  2. EntityManagerFactory存储所有实体类的映射。
  3. 它是实体管理器实例的提供者。
  4. 上面的其他内容是什么?

    EntityManager em = emf.createEntityManager()
    
    1. 创建一个实体管理员。

    2. EntityManager负责管理托管对象的生命周期。

    3. 上面还有什么行吗?它是否与数据库创建会话?

      em.getTransaction().begin();
      
      1. 以上行是否会创建数据库会话?
      2. 是会话,事务和会话是java端的东西还是数据库端的东西?
      3. 什么交易和会话意味着什么?

        em.getTransaction().commit();

      4. 我觉得这一行完成了创建事务和将数据保存到数据库的所有工作。我是对的吗?

        em.close();

      5. 此行关闭数据库会话。

        emf.close();

      6. 工厂中存在的所有映射都会丢失并符合GC条件吗?

      7. 我的理解是否正确?

0 个答案:

没有答案