Hibernate - 配置

Hibernate需要提前知道 - 在哪里可以找到定义Java类与数据库表的关系的映射信息. Hibernate还需要一组与数据库和其他相关参数相关的配置设置.所有这些信息通常作为标准的Java属性文件提供,名为 hibernate.properties ,或者作为名为 hibernate.cfg.xml 的XML文件提供.

我将考虑使用XML格式的文件 hibernate.cfg.xml 来在我的示例中指定所需的Hibernate属性.大多数属性采用其默认值,除非确实需要,否则不需要在属性文件中指定它们.此文件保存在应用程序类路径的根目录中.

Hibernate属性

以下是重要属性的列表,您将需要在独立情况下配置数据库 :

Sr.No.属性&描述
1

hibernate.dialect

此属性使Hibernate为所选数据库生成适当的SQL.

2

hibernate.connection.driver_class

JDBC驱动程序类.

3

hibernate.connection.url

数据库的JDBC URL实例.

4

hibernate.connection.username

数据库用户名.

5

hibernate.connection.password

数据库密码.

6

hibernate.connection.pool_size

限制在Hibernate中等待的连接数databa se连接池.

7

hibernate.connection.autocommit

允许自动提交模式用于JDBC连接.

如果您正在使用数据库以及应用程序服务器和JNDI,那么您必须配置以下属性 :

Sr.No.属性&说明
1

hibernate.connection.datasource

您在应用程序服务器上下文中定义的JNDI名称.

2

hibernate.jndi.class

JNDI的InitialContext类.

3

hibernate.jndi.< JNDIpropertyname>

将您喜欢的任何JNDI属性传递给JNDI InitialContext .

4

hibernate.jndi.url

提供的网址JNDI.

5

hibernate.connection.username

数据库用户名.

6

hibernate.connection.password

数据库密码.

使用MySQL数据库进行休眠

MySQL是目前最流行的开源数据库系统之一.让我们创建 hibernate.cfg.xml 配置文件,并将其放在应用程序类路径的根目录中.您必须确保MySQL数据库中有 testdb 数据库,并且您可以使用 test 来访问数据库.

XML配置文件必须符合Hibernate 3 Configuration DTD,可在 http://www.hibernate.org/dtd/hibernate-configuration-3.0.dtd .

<?xml version = "1.0" encoding = "utf-8"?>
<!DOCTYPE hibernate-configuration SYSTEM 
"https://img01.yuandaxia.cn/Content/img/tutorials/hibernate/hibernate-configuration-3.0.dtd">
<hibernate-configuration>
   <session-factory>
   
      <property name = "hibernate.dialect">
         org.hibernate.dialect.MySQLDialect
      </property>
      
      <property name = "hibernate.connection.driver_class">
         com.mysql.jdbc.Driver
      </property>
      
      <!-- Assume test is the database name -->
      
      <property name = "hibernate.connection.url">
         jdbc:mysql://localhost/test
      </property>
      
      <property name = "hibernate.connection.username">
         root
      </property>
      
      <property name = "hibernate.connection.password">
         root123
      </property>
      
      <!-- List of XML mapping files -->
      <mapping resource = "Employee.hbm.xml"/>
      
   </session-factory>
</hibernate-configuration>

上面的配置文件包含< mapping> 标签,这些标签与hibernatemapping文件有关,我们将在下一章中看到确切地说是一个hibernate映射文件以及我们如何以及为什么使用它?

以下是各种重要数据库的列表dialect属性类型 :

Sr.No.数据库&方言属性
1

DB2

org.hibernate.dialect.DB2Dialect

2

HSQLDB

org.hibernate.dialect.HSQLDialect

3

HypersonicSQL

org.hibernate.dialect.HSQLDialect

4

Informix

org.hibernate.dialect.InformixDialect

5

Ingres

org.hibernate.dialect.IngresDialect

6

Interbase

org.hibernate.dialect.InterbaseDialect

7

Microsoft SQL Server 2000

或g.hibernate.dialect.SQLServerDialect

8

Microsoft SQL Server 2005

org.hibernate.dialect.SQLServer2005Dialect

9

Microsoft SQL Server 2008

org.hibernate.dialect.SQLServer2008Dialect

10

MySQL

org.hibernate.dialect.MySQLDialect

11

Oracle(任何版本)

org.hibernate. dialect.OracleDialect

12

Oracle 11g

org.hibernate.dialect.Oracle10gDialect

13

Oracle 10g

org.hibernate.dialect.Oracle10gDialect

14

Oracle 9i

org.hibernate.dialect.Oracle9iDialect

15

PostgreSQL

org.hibernate.dialect. PostgreSQLDialect

16

进度

org.hibernate.dialect.ProgressDialect

17

SAP DB

org.hibernate.dialect.SAPDBDialect

18

Sybase

org.hibernate .dialect.SybaseDialect

19

Sybase Anywhere

org.hibernate.dialect.SybaseAnywhereDialect