首页 课程 师资 教程 报名

Hibernate配置的三种方法

  • 2022-02-11 10:45:57
  • 644次 星辉

Hibernate 框架用于与作为Java对象的数据库记录进行交互,反之亦然。

它将java对象保存/更新为数据库记录,将数据库记录获取为java对象等。

Hibernate 使用其Session对象执行数据库交互。会话对象是在SessionFactory的帮助下检索的。

此SessionFactory与特定数据库相关。

因此,为了初始化SessionFactory,需要数据库连接参数,如数据库类型、主机、端口、用户名、密码等。

Hibernate 配置涉及将这些参数提供给应用程序,以便它能够创建SessionFactory。

Hibernate 可以通过以下三种方式进行配置:

使用 XML 文件

使用属性文件

程序化配置

1.使用XML文件

Hibernate 可以使用默认命名为hibernate.cfg.xml的 XML 文件进行配置。

该文件具有各种属性标记,其名称属性引用特定属性,值引用该属性的值。

一个典型的 XML 配置文件如下所示。

<!DOCTYPE hibernate-configuration PUBLIC “-//Hibernate/Hibernate Configuration DTD 3.0//EN” “http://www.hibernate.org/dtd/hibernate-configuration-3.0.dtd”>
<hibernate-configuration>
    <session -factory>  <property name = “show_sql” >true </property> <property name = “connection.driver.class” >com.mysql.jdbc.Driver </property> <property name = “connection.url” >jdbc :mysql://localhost:3306/codippa </property> <property name = “connection.username” >root </property>  <属性名称=                      
       “connection.password” >root </property> <property name = “dialect” >org.hibernate.dialect.MySQLDialect </property>   </session-factory> </hibernate-configuration>

如上所示使用 XML 文件配置 Hibernate 时,将需要以下代码:

配置cfg =新配置(); 
cfg。配置(“hibernate.cfg.xml” );
// 建立会话工厂
SessionFactory sessionFactory = cfg. 构建会话工厂() ;
// 获取会话
会话会话 = sessionFactory。获取当前会话();
会议。开始交易();
系统。出来。println ( session.isConnected ( )) ;
// 关闭会话
会议。关闭();
系统。出来。println ( session.isConnected ( )) ;

上面的代码创建一个对象并使用它的方法org.hibernate.cfg.Configuration构建一个。现在,与数据库交互并需要数据库连接参数。org.hibernate.SessionFactorybuildSessionFactory

SessionFactory

这些是从上面创建的表单的配置文件中提供给它的。配置对象使用其方法

加载此文件。一旦创建,它就可以用来创建一个.configure

SessionFactoryorg.hibernate.Session

2.使用属性文件

这是配置 Hibernate 的另一种方法,它是一个简单的属性文件,它是名称-值对的组合。

属性文件的快照如下所示:

hibernate.dialect = org.hibernate.dialect.MySQLDialect
hibernate.connection.driver_class = com.mysql.jdbc.Driver
hibernate.connection.url = jdbc:mysql://localhost:3306/codippa
hibernate.connection.username = root
hibernate。连接.密码=根

属性名称是重要的,也就是说,属性的名称不能更改,只能更改它们的值以匹配数据库设置。

使用属性文件连接到数据库所需的代码如下所示。

代码将类路径中的属性文件显式加载到对象中,并通过其方法java.util.Properties将此属性对象提供给 a 。从配置创建的方法保持不变。org.hibernate.cfg.ConfigurationsetProperties

SessionFactory

配置cfg =新配置(); 
属性 p =新属性() ; 
//加载属性文件
页。加载(线程。currentThread ()。getContextClassLoader ()。getResourceAsStream (“hibernate.properties” ));
cfg。设置属性( p ) ;
// 建立会话工厂
SessionFactory 工厂 = cfg。构建会话工厂() ;
// 获取会话
会话会话 = 工厂。打开会话();
系统。出来。println ( session.isConnected ( )) ;
// 关闭会话
会议。关闭();
系统。出来。println ( session.isConnected ( )) ;

3.程序化配置

这种方法不需要任何外部 XML 或属性文件。

所有必需的配置参数都由代码本身提供。有关此方法的详细信息,请参阅本文。

让我们调整一下:

Hibernate.cfg.xml或Hibernate.properties应该存在于src文件夹或src/main/resources文件夹下。

如果在没有任何参数的情况下调用configure方法,那么 Hibernate默认org.Hibernate.cfg.Configuration会搜索名为hibernate.cfg.xml的文件。

使用属性文件或 xml 文件配置 Hibernate 时,该文件应位于应用程序类路径中。

SessionFactory 负责单个数据库。

如果您的应用程序与许多数据库交互,那么您将需要多个 Session 工厂。

Aorg.hibernate.Session表示单个工作单元,并为每个操作打开和关闭。

SessionFactory 是一个全局对象,应该在应用程序中只初始化一次。

选你想看

你适合学Java吗?4大专业测评方法

代码逻辑 吸收能力 技术学习能力 综合素质

先测评确定适合在学习

在线申请免费测试名额
价值1998元实验班免费学
姓名
手机
提交