Dentro de la MemoryDB: crear esquema en 'Configuración ()' de las pruebas unitarias: Netbeans (6.5.1) Hibernate (3) Junit (3), HSQL (1.8)

StackOverflow https://stackoverflow.com/questions/1893737

Pregunta

¿Cuáles son los pasos necesarios para una instalación en memoria DB, construir el esquema de forma automática con la herramienta de Hibernate 'hbm2ddl' dentro de un Junit (3) 'setup ()' usando Netbeans 6.5.1? No estoy usando anotaciones de Hibernate -. Simplemente un archivo de asignación

En el código real, quiero usar una base de datos en disco, por supuesto. [Es decir los Junits viven un paquete separado 'prueba']

Así que creo que esto es llegar allí:

  1. Crear un proyecto estándar de Java en Netbeans 6.5.1, añadir en la biblioteca Hiberate.
  2. Crea el POJOs, hibernate.cfg e hibernación archivo de asignación.
  3. Copia el archivo cfg y mapeo al paquete de prueba.

El método de configuración es el siguiente:

 protected void setUp() throws Exception {
         Configuration config = new Configuration();
         config.configure();
         SchemaExport exporter;
         exporter=new SchemaExport(config);
         exporter.create(true, true);
    }
¿Fue útil?

Solución

  1. Crear un proyecto estándar de Java en Netbeans 6.5.1, añadir en la biblioteca Hiberate.
  2. Crea el POJOs, hibernate.cfg e hibernación archivo de asignación.
  3. Copia el archivo cfg y mapeo al paquete de prueba.

El contorno del caso de prueba es el siguiente:

import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.Transaction;
import org.hibernate.cfg.Configuration;
import org.hibernate.tool.hbm2ddl.SchemaExport;
...
public class DatabaseTest extends TestCase {
    private static Configuration config;
    private static SessionFactory sessionFactory;
    private static Session session;
...
    @Override
    protected void setUp() throws Exception {
         config = new Configuration();
         config.configure();
         SchemaExport exporter;
         exporter=new SchemaExport(config);
         exporter.create(true, true);
         sessionFactory = config.buildSessionFactory();
         session=sessionFactory.openSession();
    }
...
    @Override
    protected void tearDown() throws Exception {
        session.close();
    }
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top