Cómo usar Postgresql con Hibernate en Netbeans
Cuando empezamos a trabajar con Java, la mayoría de ejemplos que encontramos están relacionados con MySQL. Es por esta razón que en este artículo voy a mostrarles la manera de conectar Postgresql con Hibernate utilizando Netbeans y, fiel a mi estilo, al final del post les dejaré código fuente que podrán descargar y reutilizar.
Empezemos creando nuestra base de datos, para lo cual podemos usar el pgAdmin. Una imágen vale más que mil palabras así que les dejaré la secuencia de imágenes de cómo crear la base de datos. Prime iniciamos el pgAdmin tal como se muestra en la siguiente imagen:
Nos conectamos al servidor de base de datos.
Nos conectamos al servidor de base de datos.
Ingresamos nuestra contraseña.
Creamos una base de datos tal como se muestra a continuación:
Para este caso la nombramos rolandopalermo.
Y creamos una nueva tabla.
A la que llamaremos usuario.
Ingresamos las columnas de nuestra tabla, en este caso el id.
Luego de haber ingresado todas las columnas, deberíamos tener algo como esto:
También les dejo las sentencias SQL:
-- Table: usuario -- DROP TABLE usuario; CREATE TABLE usuario ( id serial NOT NULL, nombres "char"[], apellidos "char"[], fecha_registro date, CONSTRAINT usuario_pkey PRIMARY KEY (id) ) WITH ( OIDS=FALSE ); ALTER TABLE usuario OWNER TO postgres;
Con esto ahora crearemos un proyecto Java en Netbeans al que llamaremos HibernateConPostgresql.
Y creamos el archivo de configuración de Hibernate.
Una vez creados los POJOS creamos la secuencia de generación de id's en postgresql, para lo cual ejecutamos la siguiente sentencia SQL:
Seleccionando la opción CREATE Script de nuestra base de datos, tal como se muestra en la siguiente imagen:
Y la asociamos a nuestro archivo Usuario.hbm.xml agregando la secuencia asociada a nuestra tabla en el modo de generación del id, quedándo el archivo de la siguiente manera:
<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<!-- Generated 13-jun-2013 0:21:51 by Hibernate Tools 3.2.1.GA -->
<hibernate-mapping>
<class name="com.rolandopalermo.blog.demo.Usuario" table="usuario" schema="public">
<id name="id" type="int">
<column name="id" />
<generator class="sequence">
<param name="sequence">usuario_id_seq</param>
</generator>
</id>
<property name="fechaRegistro" type="date">
<column name="fecha_registro" length="13" />
</property>
<property name="nombres" type="string">
<column name="nombres" />
</property>
<property name="apellidos" type="string">
<column name="apellidos" />
</property>
</class>
</hibernate-mapping>
Adicionalmente creamos un método Main, en donde se mostrará la forma de guardar un registro de usuario en la base de datos:/** * * @author Rolando */ public class Main { public static void main(String[] args) { UsuarioDaoHibernate usuarioDAO = new UsuarioDaoHibernate(); Usuario usuario = new Usuario(); usuario.setNombres("Rolando Palermo"); usuario.setApellidos("Rodríguez Cruz"); usuario.setFechaRegistro(new Date()); usuarioDAO.save(usuario); } }Y como mencioné hace un momento, aquí les dejo el proyecto hecho en Netbeans.
Muy bueno este blog. Quisiera saber como generar los hbms desde las clases creadas utilizando netbeans y el hibernate.cfg
ResponderBorrarRespondiendo a tu pregunta para generar el archivo hbms es creando los Pojos
Borrares decir New - Other - Hibernate - Hibernate Mapping files and POJOs
se crean 2 archivos por defecto hbm.xml y un archivo java.
y para generar el archivo hibernate.cfg
New - Other - Hibernate -Hibernate Mapping files and POJOs
Saludos
hola, muy ilustrativo, mira esta pregunta la he echo en muchas partes pero nadie me responde, uso hibernate, postgresQL, JSF, al punto dos entidades relacionadas uno a muchos, usando estructura o patron DAO, podrias reliazar un ejemplo simple para que a traves del padre pueda mostrar al objeto hijo, o crear un hijo usando o dentro la sesion de padre..(DE veras necesito iliminacion!!!)
ResponderBorrarHola, tengo una pregunta descargue el proyecto y hay un paquete llamado "com.rolandopalermo.blog.hbn", segui los pasos del tuto y no veo donde se crea el paquete ni los archivos internos. Saludos
ResponderBorrarMuy interesante lo aplicare a uno de mis proyectos.. saludos
ResponderBorrarGenio!!! EL mejor tutorial!
ResponderBorrarMuchisimas gracias por existir!