Hibernate5.4官方用户指南

1 架构

1.1hibernate架构图

Hibernate|Hibernate5.4用户指南(一)之架构

如上Hibernate架构图所示:在数据访问层,通过调用JPA提供的API或者Hibernate提供的原生API使用Hibernate框架功能。Hibernate底层封装了JDBC,在Hibernate底层和关系型数据库进行交互。

1.2 JPA和Hibernate主要接口和类图

Hibernate|Hibernate5.4用户指南(一)之架构

  • SessionFactory (org.hibernate.SessionFactory)
    SessionFactory:应用程序域模型到数据库映射的一个线程安全(且不可变)表示。充当org.hibernate.session的实例。EntityManagerFactory与JPA中的SessionFactory是等价的。基本上,这两者聚合到同一个SessionFactory实现中。
    创建一个SessionFactory非常昂贵。因此,对于任何给定的数据库,应用程序应该只有一个关联的SessionFactory。SessionFactory维护Hibernate所有会话(如二级缓存、连接池、事务系统集成等)使用的服务。

  • Session (org.hibernate.Session)
    Session:一个单线程、短生命周期的对象。在JPA命名法中,Session由EntityManager表示。
    在底层,Hibernate Session封装了一个JDBC java.sql.Connection,并充当org.hibernate.Transaction的事务工厂。它维护应用程序域模型的一般“可重复读取”持久化上下文(第一级缓存)。

  • Transaction (org.hibernate.Transaction)
    Transaction:应用程序用来划分单个物理事务边界的单线程、短期存在的对象。EntityTransaction,将应用程序与正在使用的底层事务系统(JDBC或JTA)隔离开来。

Hibernate是JPA的一种实现。

相关文章:

  • 2022-12-23
  • 2022-12-23
  • 2022-02-18
  • 2021-08-22
  • 2022-02-28
  • 2021-05-27
  • 2022-01-05
  • 2021-08-18
猜你喜欢
  • 2021-08-30
  • 2021-06-08
  • 2022-02-07
  • 2021-11-29
  • 2021-09-18
  • 2021-11-20
  • 2021-11-17
相关资源
相似解决方案