Inicialización con Hibernate
Hablamos de la inicialización del esquema de base de datos. Cuando creamos una aplicación es muy habitual actualizar nuestras entidades al comienzo. Durante esta fase es muy útil poder actualizar la estructura de nuestra base de datos, y Spring proporciona algunas herramientas que nos ayudan a lograr esto.
La mejor manera para tener separado nuestro DataSource de pruebas es crear un fichero de propiedades separado para ello [ project root/src/test/resources ].
Propiedad spring.jpa.hibernate.ddl-auto
Esta propiedad permite customizar el comportamiento de la inicialización de Hibernate. Le dice a Hibernate que cambios debería hacer sobre nuestro esquema automáticamente. Las opciones disponibles son:- create: drop todas las tablas de las entidades que se crearon, y las crea de nuevo cuando la aplicación arranca.
- create-drop: drop todas las tablas cada vez que paramos la aplicación, y las crea cuando arrancamos. Suele ser usado para test unitarios ya que deja la base de datos limpia en cada ejecución. Este es el valor por defecto en base de datos in-memory como H2.
- update: compara el esquema actual con el nuevo para buscar diferencias y aplicarlas.
- validate: pide a Hibernate que chequee si las tablas y columnas existen, y en caso contratio devuelve una excepción
- none: no hace nada, y esta es la opción por defecto con bases de datos externas
La mejor manera para tener separado nuestro DataSource de pruebas es crear un fichero de propiedades separado para ello [ project root/src/test/resources ].
Comentarios
Publicar un comentario