Учебники

Hibernate — Конфигурация

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

Я рассмотрю файл hibernate.cfg.xml в формате 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.

hibernate.dialect

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

hibernate.connection.driver_class

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

hibernate.connection.url

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

hibernate.connection.username

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

hibernate.connection.password

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

hibernate.connection.pool_size

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

hibernate.connection.autocommit

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

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

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

hibernate.connection.datasource

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

2

hibernate.jndi.class

Класс InitialContext для JNDI.

3

hibernate.jndi. <JNDIpropertyname>

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

4

hibernate.jndi.url

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

5

hibernate.connection.username

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

6

hibernate.connection.password

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

hibernate.connection.datasource

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

hibernate.jndi.class

Класс InitialContext для JNDI.

hibernate.jndi. <JNDIpropertyname>

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

hibernate.jndi.url

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

hibernate.connection.username

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

hibernate.connection.password

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

Hibernate с базой данных MySQL

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

Файл конфигурации 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 и как и почему мы его используем?

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

DB2

org.hibernate.dialect.DB2Dialect

HSQLDB

org.hibernate.dialect.HSQLDialect

HypersonicSQL

org.hibernate.dialect.HSQLDialect

Informix

org.hibernate.dialect.InformixDialect

Энгр

org.hibernate.dialect.IngresDialect

Interbase

org.hibernate.dialect.InterbaseDialect

Microsoft SQL Server 2000

org.hibernate.dialect.SQLServerDialect

Microsoft SQL Server 2005

org.hibernate.dialect.SQLServer2005Dialect

Microsoft SQL Server 2008

org.hibernate.dialect.SQLServer2008Dialect

MySQL

org.hibernate.dialect.MySQLDialect

Oracle (любая версия)

org.hibernate.dialect.OracleDialect

Oracle 11g

org.hibernate.dialect.Oracle10gDialect

Oracle 10g

org.hibernate.dialect.Oracle10gDialect

Oracle 9i

org.hibernate.dialect.Oracle9iDialect

PostgreSQL

org.hibernate.dialect.PostgreSQLDialect

Прогресс

org.hibernate.dialect.ProgressDialect

SAP DB

org.hibernate.dialect.SAPDBDialect

Sybase

org.hibernate.dialect.SybaseDialect

Sybase Anywhere

org.hibernate.dialect.SybaseAnywhereDialect