Hibernacja - konfiguracja

Hibernate wymaga wcześniejszej wiedzy - gdzie znaleźć informacje o mapowaniu, które definiują, w jaki sposób klasy Java odnoszą się do tabel bazy danych. Hibernacja wymaga również zestawu ustawień konfiguracyjnych związanych z bazą danych i innymi powiązanymi parametrami. Wszystkie takie informacje są zwykle dostarczane jako standardowy plik właściwości Java o nazwiehibernate.propertieslub jako plik XML o nazwie hibernate.cfg.xml.

Rozważę plik w formacie XML hibernate.cfg.xmlaby określić wymagane właściwości Hibernate w moich przykładach. Większość właściwości przyjmuje wartości domyślne i nie jest wymagane określanie ich w pliku właściwości, chyba że jest to naprawdę wymagane. Ten plik jest przechowywany w katalogu głównym ścieżki klas aplikacji.

Właściwości hibernacji

Poniżej znajduje się lista ważnych właściwości, które trzeba będzie skonfigurować dla baz danych w sytuacji autonomicznej -

Sr.No. Właściwości i opis
1

hibernate.dialect

Ta właściwość sprawia, że ​​Hibernate generuje odpowiedni kod SQL dla wybranej bazy danych.

2

hibernate.connection.driver_class

Klasa sterownika JDBC.

3

hibernate.connection.url

Adres URL JDBC do instancji bazy danych.

4

hibernate.connection.username

Nazwa użytkownika bazy danych.

5

hibernate.connection.password

Hasło bazy danych.

6

hibernate.connection.pool_size

Ogranicza liczbę połączeń oczekujących w puli połączeń bazy danych Hibernate.

7

hibernate.connection.autocommit

Umożliwia użycie trybu automatycznego zatwierdzania dla połączenia JDBC.

Jeśli używasz bazy danych wraz z serwerem aplikacji i JNDI, musisz skonfigurować następujące właściwości -

Sr.No. Właściwości i opis
1

hibernate.connection.datasource

Nazwa JNDI zdefiniowana w kontekście serwera aplikacji, którego używasz dla aplikacji.

2

hibernate.jndi.class

Klasa InitialContext dla JNDI.

3

hibernate.jndi.<JNDIpropertyname>

Przekazuje dowolną właściwość JNDI do obiektu JNDI InitialContext .

4

hibernate.jndi.url

Zawiera adres URL dla JNDI.

5

hibernate.connection.username

Nazwa użytkownika bazy danych.

6

hibernate.connection.password

Hasło bazy danych.

Hibernuj z bazą danych MySQL

MySQL to jeden z najpopularniejszych obecnie dostępnych systemów baz danych typu open source. Stwórzmyhibernate.cfg.xmlplik konfiguracyjny i umieść go w katalogu głównym ścieżki klas aplikacji. Będziesz musiał się upewnić, że masztestdb baza danych dostępna w Twojej bazie danych MySQL i masz użytkownika test dostęp do bazy danych.

Plik konfiguracyjny XML musi być zgodny z DTD konfiguracji Hibernate 3, który jest dostępny pod adresem 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>

Powyższy plik konfiguracyjny zawiera <mapping> tagi, które są powiązane z plikiem mapowania hibernacji, a zobaczymy w następnym rozdziale, czym dokładnie jest plik mapowania hibernacji oraz jak i dlaczego go używamy?

Poniżej znajduje się lista różnych ważnych typów właściwości dialektu baz danych -

Sr.No. Właściwość bazy danych i dialektu
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