Buscar este blog

domingo, 24 de junio de 2012

Netbeans: de hbm a java con Ant

Introduccion:

Esta entrada muestra como auto-generar codigo java a partir de documentos de mapeo hbm de Hibernate.

Esto se hara desde el interior de Netbeans, sin embargo funciona unicamente utilizando Ant, ya que modificamos el build.xml y usamos las los .jar  de Hibernate e Hibernate Tool (en particular hbm2java) que son idependientes a NetBeans.


From hbm to java

Una vez con un proyecto creado en NetBeans, entramos en la pestaña Files y abrimos el archivo build.xml (el mismo que en Ant) y agreamos el siguiente codigo justo despues de los comentarios, pero antes de la etiqueta </project>:

<property name="src" value="src"/>
    <property name="hibernate_path" value="/home/lubuntu/.netbeans-7.1.1/java/modules/ext/"/>
    <property name="apache_path" value="/home/lubuntu/.netbeans-7.1.1/ide/modules/"/>
    
    <path id="classes-path">
        <fileset dir="${hibernate_path}" includes="**/*.jar"/>
        <fileset dir="${apache_path}" includes="**/*.jar"/>
    </path>
    
    <taskdef name="htool"
            classname="org.hibernate.tool.ant.HibernateToolTask"
            classpathref="classes-path"/>
     
     <target name="gencode">
         <htool destdir="${src}">
             <configuration
                 configurationfile="${src}/hibernate.cfg.xml">
                <fileset dir="${src}/dvdshop" includes="*.hbm.xml"/>
              </configuration>
             <hbm2java jdk5="true"/>
         </htool>
     </target>

El código anterior solamente agrega una nueva tarea al script de Ant y lo unico que tienes que modificar es el atributo value de las etiquetas <property>'s con la direccion correcta de donde se encuentran los .jar de Hibernate y los de apache. Estos utilimos por lo general biene dentro del bundle de Hibernate.

Con estas modificaciones solo hay que darle click secundario al archivo build.xml, elegir Run Target -> Other Targets -> gencode. Entonces nos generara un los archivos .java.

Bibliografia

[1] Dave Minter, Jeff Linwood, Beginning Hibernate: From Novice to Profesional, Appress, Agosto 2006.
[2] Jame Helliott, Hibernate: A Developer's Notebook, O'reilly 2004.
[3] Hibernate Reference 24 de Junio del 2012.
[4] Apache Commons 24 de Junio del 2012.

No hay comentarios:

Publicar un comentario