Foros del Web » Programación para mayores de 30 ;) » Java »

En que momento se crean automaticamente las tablas con hibernate

Estas en el tema de En que momento se crean automaticamente las tablas con hibernate en el foro de Java en Foros del Web. Hola , estoy desarrollando una aplicacion web con java utilizando hibernate y no consigo hacer que se creen automaticamente las tablas en la BD. Se ...
  #1 (permalink)  
Antiguo 07/07/2012, 13:43
 
Fecha de Ingreso: agosto-2010
Mensajes: 4
Antigüedad: 14 años, 2 meses
Puntos: 0
En que momento se crean automaticamente las tablas con hibernate

Hola , estoy desarrollando una aplicacion web con java utilizando hibernate y no consigo hacer que se creen automaticamente las tablas en la BD. Se supone que tambien me crea la BD ademas de las tablas o la BD la tengo que crear a mano y despues hibernate me crea las tablas automaticamente? y mi otra duda es si se crean al momento en que la deployo en mi servidor tomcat o se van creando a medida que las voy usando? Gracias

este es mi archivo de configuracion

Código XML:
Ver original
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!DOCTYPE hibernate-configuration PUBLIC "-//Hibernate/Hibernate Configuration DTD
  3. 3.0//EN" "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
  4. <hibernate-configuration>
  5. <session-factory name="test">
  6. <property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property>
  7. <property name="hibernate.connection.url">jdbc:mysql://localhost:3306/grupo</property>
  8. <property name="hibernate.connection.username">root</property>
  9. <property name="hibernate.connection.password"></property>
  10. <property name="hibernate.default_schema">javatest</property>
  11. <property name="show_sql">true</property>
  12. <property name="hibernate.hbm2ddl.auto">create</property>
  13. <property name="hibernate.dialect">org.hibernate.dialect.MySQ</property>
  14. <mapping class="entidades.Contacto"/>
  15. <mapping class="entidades.Usuario"/>
  16. </session-factory>
  17. </hibernate-configuration

Estoy usando una BD MySQL
  #2 (permalink)  
Antiguo 07/07/2012, 14:34
Avatar de chuidiang
Colaborador
 
Fecha de Ingreso: octubre-2004
Mensajes: 3.774
Antigüedad: 20 años, 1 mes
Puntos: 454
Respuesta: En que momento se crean automaticamente las tablas con hibernate

Hola:

La creación la hace la propiedad hibernate.hbm2ddl.auto con el valor create (los valores posibles son validate | update | create | create-drop ) Lo hará en cuando configures Hibernate desde tu código SessionFactory sf = new Configuration().configure().buildSessionFactory(); y el fichero debe llamarse hibernate.cfg.xml y debe estar en el classpath.

Ojo, eso borra las tablas y las vuelve a crear, por lo que es buena opción mientras pruebas tu programa para empezar de cero en cada prueba. No está muy indicado en código de producción, pero también puedes usar la opción "update", que las crea, modifica o deja según están.

Revisa si tu código da errores al leer el fichero de configuración, debería estar creando ya las tablas.

Se bueno.
__________________
Apuntes Java
Wiki de Programación
  #3 (permalink)  
Antiguo 08/07/2012, 09:26
 
Fecha de Ingreso: agosto-2010
Mensajes: 4
Antigüedad: 14 años, 2 meses
Puntos: 0
Respuesta: En que momento se crean automaticamente las tablas con hibernate

bueno gracias chuidiang pero eso no era lo que habia preguntado.

Despues de hacer unas cuantas pruebas y perder un buen rato descubri que las tablas se van creando a medida que se van guardando objetos en ellas y no cuando se deploya la aplicacion como pense que era y que ademas la BD tiene que estar creada (aunque no tenga tablas) porque sino tira una excepcion.

Etiquetas: automaticamente, crean, hibernate, momento, tablas, aplicaciones
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 10:32.