Hibernate之自動生成工具

zxc123e發表於2015-07-11

Hibernate總的來說無非就是維護javabena(pojo)與資料庫表的對映工具,如果我們知道javaben,hbm檔案,資料庫schema三者中的一個就可以生成另外兩個檔案,MyEclipse中也整合了這些功能,其實這些功能的實現都是通過HibernateTool這個工具來實現的.下面我們看看如何通過HibernateTool和Ant來自動生成檔案.
首先我們要在專案下建立一個dbschema目錄用來存放生成的資料庫schema,以及一個libs目錄存放所需要的一些jar包.

  • commons-logging-1.0.4.jar
  • dom4j-1.6.1.jar
  • freemarker.jar
  • hibernate3.jar
  • hibernate-tools.jar
  • log4j-1.2.15.jar
  • mysql-connector-java-5.1.18-bin.jar
  • slf4j-api-1.5.8.jar

我們需要到官網去下載這些jar,特別是hibernate-tool.jar這個jar包下載的版本應與Eclipse的版本一致.
在專案下建立一個build.properties以及build.xml檔案:
builde.properties指定一些檔案的目錄:

src=src
dbschema=dbschema
libs=libs
bin=bin

執行build.xml之前,當然你需要配置好ant,build.xml如下:`

<project name="hibernate_tools" basedir="." default="dbschema">
    <property file="build.properties"></property>
    <target name="init">
        <path id="lib.path">
            <pathelement path="${bin}"/>
            <fileset dir="${libs}" >
                <include name="**/*.jar"/>
            </fileset>
        </path>
    </target>
    <taskdef name="hibernatetool" classname="org.hibernate.tool.ant.HibernateToolTask" classpathref="lib.path"></taskdef>
    <target name="dbschema" depends="init">
        <hibernatetool>
            <configuration configurationfile="${src}/hibernate.cfg.xml"/>
            <hbm2ddl destdir="${dbschema}" export="false" outputfilename="dbschema.sql"/>
            <hbm2java jdk5="true" destdir="${src}"/>
            <
        </hibernatetool>
    </target>
</project>

上面我們利用hbm檔案就可以生成對應的java檔案和資料庫schema檔案.這只是工具的一部分功能,我們還可以利用這個工具可以生成更多的東西.

相關文章