如果您使用的是Hibernate核心框架,则需要先建立一个SessionFactory,然后才能开始进行任何数据持久化。 顾名思义,SessionFactory产生了Hibernate会话,没有会话,您将无法执行任何创建,更新,检索或删除操作,这几乎使数据库层变得毫无意义。 对于那些需要使用Hibernate框架构建企业解决方案的人,他们可以采用几种方法来构建Hibernate SessionFactory,其中三种最受欢迎的选择是:
- 使用hibernate.cfg.xml文件构建Hibernate SessionFactory
- 使用Metatada和ServiceRegistry类在Hibernate中创建SessionFactory
- 作弊并从JPA的EntityManager中获取Hibernate SessionFactory
Hibernate中的SessionFactory是什么?
Hibernate SessionFactory是JBoss持久性框架的类库中最重要的组件。 SessionFactory在启动时会引导整个数据持久层,因为它可以处理重要的数据库连接性任务,连接池,线程池,JNDI交互,如果持久实体需要它甚至可以创建数据库表。 但最重要的是,Hibernate中的SessionFactory负责创建Session对象。 Hibernate会话提供了诸如保存,删除和更新之类的方法,所有这些方法都用于对SessionFactory连接到的数据库执行基于CRUD的操作。 大多数应用程序都会创建一个Hibernate SessionFactory单例,并在应用程序的生命周期中对其进行缓存,因为创建对象会占用大量资源。
Hibernate是JBoss对Java Persistence API(JPA)的实现,大多数应用程序都不直接与Hibernate类进行交互。 SessionFactory的JPA伴随类是EntityManagerFactory,建议现代应用程序尽可能与JPA API进行交互。 但是,有时需要Hibernate SessionFactory,因此可以通过以下三种方法创建它:
1.使用hiberante.cfg.xml构建SessionFactory
我从来都不是