Estoy buscando un rápido (muy rápido) modo a prueba de cambios para hibernar las consultas. Tengo una gran aplicación con miles de diferentes consultas HQL (en archivos XML) y 100+ asignan las clases y no quiero volver a implementar la aplicación en su totalidad a la prueba de un pequeño cambio a una consulta.

¿Cómo sería una buena puesta a parecerse a liberarme de redistribución y de permitir una rápida consulta?

InformationsquelleAutor Chris | 2009-06-25

7 Comentarios

  1. 16

    Con Intellij IDEA 8.1.3 la mechnism de la opción se llama «Restricción». Al instante de la prueba de consultas HQL:

    1. crear un origen de datos Herramientas -> Fuente de los Datos, Agregar Origen de Datos, definir conductor, nombre de usuario y la contraseña de yor desarrollo db
    2. en caso de que usted no tiene ya un estado de hibernación.cfg o configurar su sesión de fábrica de una manera diferente a través de xml: crear un estado de hibernación.cfg archivo que hace referencia a todos los XML de la asignación (definir un nombre para la sesión de fábrica, sólo para un manejo más fácil)
    3. en ‘la Estructura del Proyecto,» añadir Faceta de su módulo de opción y asignar el recientemente origen de datos definido para la nueva faceta
    4. interruptor de Java EE Vista
    5. Hibernate Abierta Facetas – Nodo
    6. Derecho haga clic en Sesión de fábrica y elegir la opción «Abrir HQL Consola»
    7. entrar en consulta HQL en la consola
      …y de hecho tu eres.

    lo siento por este RTFM pregunta.

  2. 11

    Puede utilizar hibernate tools en eclipse para ejecutar consultas. Esto le permitirá ejecutar HQL cada vez que quiero probar algo.

    Si está utilizando IntelliJ, hay Hibero.

    Hay un independiente del editor de sol, pero yo no lo he probado.

    • ¿existe una solución (=plugin, lo que sea) para IntelliJ IDEA 8?
    • He añadido un enlace a Hibero.
    • sí, thxn. si funciona como lo describen, es exactamente lo que necesito, pero: «Desde el 1 de enero de 2008 .. Hibero™ han sido suspendidas por razones de negocios.», ¿y ahora qué?
    • Creo que voy a eliminar el marcador luego, no ha utilizado IntelliJ por un tiempo (no es una elección, un presupuesto).
    • No tengo suficiente rep a editar el post, pero la dirección url correcta para Hibernar Herramientas es: hibernate.org/subprojects/tools.html
    • enlace para independiente editor está roto. Podrías actualizarlo, por favor?

  3. 3

    Probar mis consultas HQL en la unidad de pruebas con la base de datos HSQLDB. Basta con crear un gerente de la entidad, fundido a una sesión de hibernate y consulta de distancia.

        final EntityManagerFactory entityManagerFactory = Persistence.createEntityManagerFactory("tacs-test", props);
    
        final EntityManager entityManager = entityManagerFactory.createEntityManager();
    
        return (Session)entityManager.getDelegate();

    Mejor
    Anders

    • Exactamente lo que yo necesitaba, thx
  4. 3

    Usted dijo que la manera más rápida, no estoy seguro de si significaba la forma más rápida de ponerse en marcha, o la forma más rápida de realizar pruebas constantes, con una inversión inicial para obtener las pruebas aplicadas. Esta respuesta es más el último.

    La manera que yo he hecho esto antes era poner en práctica unas sencillas pruebas de integración con JUnit y DBUnit.

    En esencia, que va a utilizar DBUnit para configurar la base de datos de prueba con un conocido y representativo conjunto de datos y, a continuación, llanura de JUnit para el ejercicio de los métodos que contiene sus consultas HQL, y comprobar los resultados.

    Por ejemplo,

    Configurar tu primera base de datos que contenga sólo un conjunto fijo de los datos, por ejemplo,

    Product Name, Price
    Acme 100 Series Dynamite, $100
    Acme 200 Series Dynamite, $120
    Acme Rocket, $500

    Esto es algo que te gustaría hacer en tu prueba de JUnit caso del método setup ().

    Ahora supongamos que usted tiene un DAO para esta entidad, y hay una «findProductWithPriceGreaterThan(int)» método. En su prueba, tendría que hacer algo como:

    public void testFindProductWithPriceGreaterThanInt() {
        ProductDAO dao = new HibernateProductDAO();
        //... initialize Hibernate, or perhaps do this in setup()
    
        List products = dao.findProductWithPriceGreaterThan(110);
        assertEquals(2, products.size());
        //... additional assertions to verify the content of the list.
    }
    • con rápida/fast significa el cambio de la prueba de cambio de-prueba » … iteración.
    • una vez que usted tiene una clase base para DBunit pruebas, usted puede escribir los métodos de prueba en menos de un minuto y se ejecutan durante unos segundos. No tan rápido como un dedicado editor de consultas con un gran botón «ejecutar», pero la cosa buena acerca de DBUnit pruebas es que se puede guardar y utilizar como pruebas de regresión. Yo personalmente estoy usando Eclipse, Hibernate Herramientas para la inicial de probar n’error y DBUnit una vez que funciona.
  5. 1

    En eclipse

    1. Instalar Hibernate tools(Jboss)
    2. Interruptor de hibernar perspectivas
    3. Abrir/haga clic en Configuración de Hibernate ventana
    4. Rt haga Clic en la ventana y Añadir la Configuración de
    5. Rt haga Clic en la ventana haga clic en abrir/HQL editor
    6. Tipo y ejecutar sus consultas HQL y obtener su resultado en la Consulta de Hibernate ventana de resultado de la

    Siga este enlace para obtener más información http://docs.jboss.org/tools/OLD/2.0.0.GA/hibernatetools/en/html/plugins.html

Dejar respuesta

Please enter your comment!
Please enter your name here