Hibernate - ¿Como configurar Hibernate? - ¿Como agregar el archivo hibernate.cfg.xml al proyecto? - Tipos de Dialectos
Buenas volviendo de las vacaciones me di cuenta que deje el tutorial de Hibernate por la mitad, pero esto se debe por los problemas que acarreaba explicar un frameworks
que utiliza SQL y toda su trato con la base de datos sin explicar SQL, pero bueno pero como esto lo hice mucho, pero mucho mas atrás hoy en día podemos seguir, lo ultimo que vimos de Hibernate fueron los Jars necesarios para utilizar Hibernate (si no te acordas pasa por acá) hoy vamos a ver que como configurar nuestro proyecto utilizando Hibernate.
Supongamos que estamos exactamente en el punto que agregamos las librerías al proyecto y ahora tenemos que empezar a configurar.
Existe un archivo en Hibernate que toma la configuración, este archivo XML se debe llamar por defecto hibernate.cfg.xml, en el caso que usemos un archivo XML, si no podemos optar por un archivo de propiedades llamado hibernate.properties, el mismo se puede en cualquier ubicación dentro del proyecto, eso si, si deseamos ingresarlo en una jerarquía mas ordenada (lease src/config/) tenemos que tener en cuenta que debemos crear "sources folders" y no solamente carpetas por que si no, no lo tomara.
Luego dentro de la "sources folder" agregamos el archivo hibernate.cfg.xml, para generar uno nuevo hacemos clic derecho sobre la "sources folder": New --> Other
En el tipo de proyecto arriba en el wizard escribimos "XML", seleccionamos "XML FILE", presionamos Next >
Luego seleccionamos la carpeta en la cual vamos a guardar nuestro archivo de configuración, donde dice "File name" escribimos el nombre del archivo que obviamente es hibernate.cfg.xml, finalmente presionamos Finish.
Dentro de este archivo de configuración de Hibernate escribiremos las siguiente propiedades:
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE hibernate-configuration PUBLIC
"-//Hibernate/Hibernate Configuration DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
<hibernate-configuration>
<session-factory>
<property name="hibernate.bytecode.use_reflection_optimizer">false</property>
<property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property>
<property name="hibernate.connection.password"></property>
<property name="hibernate.connection.username">root</property>
<property name="hibernate.connection.url"> jdbc:mysql://localhost/test</property>
<property name="hibernate.dialect">org.hibernate.dialect.MySQLDialect</property>
<property name="show_sql">true</property>
</session-factory>
</hibernate-configuration>
hibernate.connection.datasource: Es el JNDI nombre definido en el applicaction server, que se utilizara en el contexto de la aplicación. (En nuestro ejemplo no lo utilizamos)
hibernate.jndi.class: Es el contexto inicial que se utilizara para el JNDI. (En nuestro ejemplo no lo utilizamos)
hibernate.jndi.<JNDIpropertyname>: Pasa cualquier propiedad al JNDI al contexto inicial.(En nuestro ejemplo no lo utilizamos)
hibernate.jndi.url: Provee la url para el JNDI.
hibernate.connection.username: El nombre de usuario de la base de datos
hibernate.connection.password: El password del usuario de la base de datos.
hibernate.connection.driver_class: Es la clase del driver JDBC
hibernate.connection.url: Es la direccion URL de la base de datos.
hibernate.connection.username: El nombre de usuario de la base de datos
hibernate.connection.password: El password del usuario de la base de datos.
hibernate.connection.pool_size: Limita el numero de conexiones esperando en el pool de conexiones de Hibernate.
hibernate.connection.autocommit: Permite el autocommit modo para ser usado por la conexión JDBC.
En el caso que se este buscando algún tipo de dialecto que no este aquí, se puede recurrir a la documentación oficial: http://docs.jboss.org/hibernate/orm/4.2/javadocs/org/hibernate/dialect/package-summary.html
Links:
Saludos!
que utiliza SQL y toda su trato con la base de datos sin explicar SQL, pero bueno pero como esto lo hice mucho, pero mucho mas atrás hoy en día podemos seguir, lo ultimo que vimos de Hibernate fueron los Jars necesarios para utilizar Hibernate (si no te acordas pasa por acá) hoy vamos a ver que como configurar nuestro proyecto utilizando Hibernate.
Supongamos que estamos exactamente en el punto que agregamos las librerías al proyecto y ahora tenemos que empezar a configurar.
Hibernate - Archivo de configuración de Hibernate
Hibernate necesita saber de antemano dónde encontrar la información de mapeo que define cómo las clases Java se refieren a las tablas de la base. Hibernate también requiere un conjunto de valores de configuración relacionados con la base de datos y otros parámetros relacionados.Existe un archivo en Hibernate que toma la configuración, este archivo XML se debe llamar por defecto hibernate.cfg.xml, en el caso que usemos un archivo XML, si no podemos optar por un archivo de propiedades llamado hibernate.properties, el mismo se puede en cualquier ubicación dentro del proyecto, eso si, si deseamos ingresarlo en una jerarquía mas ordenada (lease src/config/) tenemos que tener en cuenta que debemos crear "sources folders" y no solamente carpetas por que si no, no lo tomara.
Hibernate - ¿Como agregar el archivo hibernate.cfg.xml al proyecto?
Para agregar la "sources folders" hacemos clic derecho sobre el proyecto -> New -> Sources Folder.Luego dentro de la "sources folder" agregamos el archivo hibernate.cfg.xml, para generar uno nuevo hacemos clic derecho sobre la "sources folder": New --> Other
En el tipo de proyecto arriba en el wizard escribimos "XML", seleccionamos "XML FILE", presionamos Next >
Luego seleccionamos la carpeta en la cual vamos a guardar nuestro archivo de configuración, donde dice "File name" escribimos el nombre del archivo que obviamente es hibernate.cfg.xml, finalmente presionamos Finish.
Dentro de este archivo de configuración de Hibernate escribiremos las siguiente propiedades:
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE hibernate-configuration PUBLIC
"-//Hibernate/Hibernate Configuration DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
<hibernate-configuration>
<session-factory>
<property name="hibernate.bytecode.use_reflection_optimizer">false</property>
<property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property>
<property name="hibernate.connection.password"></property>
<property name="hibernate.connection.username">root</property>
<property name="hibernate.connection.url"> jdbc:mysql://localhost/test</property>
<property name="hibernate.dialect">org.hibernate.dialect.MySQLDialect</property>
<property name="show_sql">true</property>
</session-factory>
</hibernate-configuration>
Hibernate - Propiedades del archivo hibernate.cfg.xml
Bueno no se asusten vamos a explicar para que funciona cada propiedad, pero aclaremos existen 2 tipos de propiedades diferentes las propiedades de una aplicación standalone y las de un servidor de aplicaciones y JNDI
Propiedades Servidor de Aplicación y JNDI
hibernate.connection.datasource: Es el JNDI nombre definido en el applicaction server, que se utilizara en el contexto de la aplicación. (En nuestro ejemplo no lo utilizamos)hibernate.jndi.class: Es el contexto inicial que se utilizara para el JNDI. (En nuestro ejemplo no lo utilizamos)
hibernate.jndi.<JNDIpropertyname>: Pasa cualquier propiedad al JNDI al contexto inicial.(En nuestro ejemplo no lo utilizamos)
hibernate.jndi.url: Provee la url para el JNDI.
hibernate.connection.username: El nombre de usuario de la base de datos
hibernate.connection.password: El password del usuario de la base de datos.
Propiedades requeridas para una aplicación standalone
hibernate.dialect: Esta propiedad hace que Hibernate genere el apropiado SQL para el tipo de base de datos elegido.hibernate.connection.driver_class: Es la clase del driver JDBC
hibernate.connection.url: Es la direccion URL de la base de datos.
hibernate.connection.username: El nombre de usuario de la base de datos
hibernate.connection.password: El password del usuario de la base de datos.
hibernate.connection.pool_size: Limita el numero de conexiones esperando en el pool de conexiones de Hibernate.
hibernate.connection.autocommit: Permite el autocommit modo para ser usado por la conexión JDBC.
Hibernate - Tipos de Dialectos
Los tipos de dialectos comunes de acuerdo a la base de datos:Database | Dialect Property |
---|---|
DB2 | org.hibernate.dialect.DB2Dialect |
HSQLDB | org.hibernate.dialect.HSQLDialect |
HypersonicSQL | org.hibernate.dialect.HSQLDialect |
Informix | org.hibernate.dialect.InformixDialect |
Ingres | 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 (any version) | 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 |
Progress | org.hibernate.dialect.ProgressDialect |
SAP DB | org.hibernate.dialect.SAPDBDialect |
Sybase | org.hibernate.dialect.SybaseDialect |
Sybase Anywhere | org.hibernate.dialect.SybaseAnywhereDialect |
En el caso que se este buscando algún tipo de dialecto que no este aquí, se puede recurrir a la documentación oficial: http://docs.jboss.org/hibernate/orm/4.2/javadocs/org/hibernate/dialect/package-summary.html
Links:
Saludos!
Hibernate - ¿Como configurar Hibernate? - ¿Como agregar el archivo hibernate.cfg.xml al proyecto? - Tipos de Dialectos
Reviewed by El lado oscuro de java
on
febrero 03, 2015
Rating:
como puedo ocultar las cadenas de conexion que se despliega y cargarlo desde un archivo solamente o pasarlo como parametros.
ResponderEliminar