Гибернация - Конфигурация

Hibernate требует заранее знать, где найти информацию о сопоставлении, которая определяет, как ваши классы Java связаны с таблицами базы данных. Hibernate также требует набора параметров конфигурации, связанных с базой данных и другими связанными параметрами. Вся такая информация обычно предоставляется в виде стандартного файла свойств Java под названиемhibernate.propertiesили как XML-файл с именем hibernate.cfg.xml.

Я буду рассматривать файл в формате XML hibernate.cfg.xmlчтобы указать необходимые свойства Hibernate в моих примерах. Большинство свойств принимают значения по умолчанию, и указывать их в файле свойств не требуется, если это действительно не требуется. Этот файл хранится в корневом каталоге пути к классам вашего приложения.

Свойства гибернации

Ниже приведен список важных свойств, которые вам необходимо будет настроить для баз данных в автономной ситуации.

Sr. No. Свойства и описание
1

hibernate.dialect

Это свойство заставляет Hibernate генерировать соответствующий SQL-код для выбранной базы данных.

2

hibernate.connection.driver_class

Класс драйвера JDBC.

3

hibernate.connection.url

URL-адрес JDBC для экземпляра базы данных.

4

hibernate.connection.username

Имя пользователя базы данных.

5

hibernate.connection.password

Пароль базы данных.

6

hibernate.connection.pool_size

Ограничивает количество соединений, ожидающих в пуле соединений базы данных Hibernate.

7

hibernate.connection.autocommit

Позволяет использовать режим автоматической фиксации для соединения JDBC.

Если вы используете базу данных вместе с сервером приложений и JNDI, вам необходимо настроить следующие свойства:

Sr. No. Свойства и описание
1

hibernate.connection.datasource

Имя JNDI, определенное в контексте сервера приложений, который вы используете для приложения.

2

hibernate.jndi.class

Класс InitialContext для JNDI.

3

hibernate.jndi.<JNDIpropertyname>

Передает любое свойство JNDI, которое вам нравится, в JNDI InitialContext .

4

hibernate.jndi.url

Предоставляет URL-адрес для JNDI.

5

hibernate.connection.username

Имя пользователя базы данных.

6

hibernate.connection.password

Пароль базы данных.

Гибернация с базой данных MySQL

MySQL - одна из самых популярных систем баз данных с открытым исходным кодом, доступных сегодня. Давайте создадимhibernate.cfg.xmlфайл конфигурации и поместите его в корень пути к классам вашего приложения. Вам нужно будет убедиться, что у вас естьtestdb база данных доступна в вашей базе данных MySQL, и у вас есть пользователь test доступен для доступа к базе данных.

Файл конфигурации XML должен соответствовать DTD конфигурации Hibernate 3, доступной по адресу http://www.hibernate.org/dtd/hibernate-configuration-3.0.dtd.

<?xml version = "1.0" encoding = "utf-8"?>
<!DOCTYPE hibernate-configuration SYSTEM 
"http://www.hibernate.org/dtd/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 и как и почему мы его используем?

Ниже приведен список различных важных типов свойств диалекта баз данных.

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

org.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 (any version)

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

Progress

org.hibernate.dialect.ProgressDialect

17

SAP DB

org.hibernate.dialect.SAPDBDialect

18

Sybase

org.hibernate.dialect.SybaseDialect

19

Sybase Anywhere

org.hibernate.dialect.SybaseAnywhereDialect