Hibernar - Configuração

O Hibernate requer saber com antecedência - onde encontrar as informações de mapeamento que definem como suas classes Java se relacionam com as tabelas do banco de dados. O Hibernate também requer um conjunto de definições de configuração relacionadas ao banco de dados e outros parâmetros relacionados. Todas essas informações são geralmente fornecidas como um arquivo de propriedades Java padrão chamadohibernate.properties, ou como um arquivo XML chamado hibernate.cfg.xml.

Vou considerar o arquivo formatado em XML hibernate.cfg.xmlpara especificar as propriedades necessárias do Hibernate em meus exemplos. A maioria das propriedades assume seus valores padrão e não é necessário especificá-los no arquivo de propriedades, a menos que seja realmente necessário. Este arquivo é mantido no diretório raiz do classpath do seu aplicativo.

Propriedades de hibernação

A seguir está a lista de propriedades importantes, você deverá configurar para bancos de dados em uma situação autônoma -

Sr. Não. Propriedades e descrição
1

hibernate.dialect

Esta propriedade faz com que o Hibernate gere o SQL apropriado para o banco de dados escolhido.

2

hibernate.connection.driver_class

A classe do driver JDBC.

3

hibernate.connection.url

O URL JDBC para a instância do banco de dados.

4

hibernate.connection.username

O nome de usuário do banco de dados.

5

hibernate.connection.password

A senha do banco de dados.

6

hibernate.connection.pool_size

Limita o número de conexões aguardando no pool de conexão do banco de dados Hibernate.

7

hibernate.connection.autocommit

Permite que o modo autocommit seja usado para a conexão JDBC.

Se você estiver usando um banco de dados junto com um servidor de aplicativos e JNDI, será necessário configurar as seguintes propriedades -

Sr. Não. Propriedades e descrição
1

hibernate.connection.datasource

O nome JNDI definido no contexto do servidor de aplicativos, que você está usando para o aplicativo.

2

hibernate.jndi.class

A classe InitialContext para JNDI.

3

hibernate.jndi.<JNDIpropertyname>

Transmite qualquer propriedade JNDI de sua preferência para o JNDI InitialContext .

4

hibernate.jndi.url

Fornece a URL para JNDI.

5

hibernate.connection.username

O nome de usuário do banco de dados.

6

hibernate.connection.password

A senha do banco de dados.

Hibernar com banco de dados MySQL

O MySQL é um dos sistemas de banco de dados de código aberto mais populares disponíveis atualmente. Vamos criarhibernate.cfg.xmlarquivo de configuração e coloque-o na raiz do classpath de seu aplicativo. Você terá que se certificar de que temtestdb banco de dados disponível em seu banco de dados MySQL e você tem um usuário test disponível para acessar o banco de dados.

O arquivo de configuração XML deve estar de acordo com o Hibernate 3 Configuration DTD, que está disponível em 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>

O arquivo de configuração acima inclui <mapping> tags, que estão relacionadas ao arquivo de mapeamento de hibernação e veremos no próximo capítulo o que exatamente é um arquivo de mapeamento de hibernação e como e por que o usamos?

A seguir está a lista de vários tipos de propriedade de dialeto de bancos de dados importantes -

Sr. Não. Propriedade de banco de dados e dialeto
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