blogjava's web log

blogjava's web log
...

使用MiddleGen 产生hibernate的数据库表映射文件

虽然myEclipse也可以生成,但是这种方式也看一下...也还是不错的..

这是以前看到的。贴上来..


来源:不详

1:下载Middlegen-Hibernate-r5
地址:URL http://voxel.dl.sourceforge.net/sourceforge/hibernate/Middlegen-Hibernate-r5.zip
2:解压缩
将下载的解压缩,如 D:\Middlegen-Hibernate-r5
3:配置数据库文件
进入D:\Middlegen-Hibernate-r5 目录下的\config\database 子目录,选择你要得数据库文件,我使用的是mysql.
将原来的
<property name="database.driver.file"           value="/${lib.dir}/mysql-connector-java-3.0.0-beta-bin.jar"/>
改成
<property name="database.driver.file"           value="/${lib.dir}/mysql-connector-java-3.0.15-ga-bin.jar"/> 
同时指定数据库与用户名。我的配置如下(红色部分是要修改的部分)
   <property name="database.script.file"           value="/${src.dir}/sql/${name}-mysql.sql"/>
   <!--property name="database.driver.file"           value="/${lib.dir}/mysql-connector-java-3.0.0-beta-bin.jar"/-->
   <property name="database.driver.file"           value="/${lib.dir}/mysql-connector-java-3.0.15-ga-bin.jar"/> 
   <property name="database.driver.classpath"      value="/${database.driver.file}"/>
   <property name="database.driver"                value="/org.gjt.mm.mysql.Driver"/>
   <property name="database.url"                   value="jdbc:mysql://localhost/hibernate"/>
   <property name="database.userid"                value="root"/>
   <property name="database.password"              value=""/>
   <property name="database.schema"                value=""/>
   <property name="database.catalog"               value=""/>
   <property name="jboss.datasource.mapping"       value="mySQL"/>

将mysql的驱动程序mysql-connector-java-3.0.15-ga-bin.jar copy 到D:\Middlegen-Hibernate-r5\lib下

4:修改Build.xml
修改D:\Middlegen-Hibernate-r5目录下的build.xml 文件,此文件是Middlegen-Hibernate 的Ant
构建配置。Middlegen-Hibernate将根据build.xml 文件中的具体参数生成数据库表映射
文件

1)第24行 修改数据库连接
将hsqldb.xml 改成mysql.xml
<!ENTITY database SYSTEM "file:./config/database/mysql.xml">
2)第52行 修改输出目录
将${build.dir}/gen-src 改成你要的目录
   <property name="build.gen-src.dir"              value="D:/Middlegen-Hibernate-r5/sample"/>
3)第184行 对应代码的Package name
hibernate 节点package 属性的默认设置实际上是由前面的
Application Name (${name})和“.hibernate”组合而成,根据我们的需要,
将其改为
         <hibernate
            destination="${build.gen-src.dir}"
            package="org.hibernate.sample"
            genXDocletTags="true"
            genIntergratedCompositeKeys="false"
            javaTypeMapper="middlegen.plugins.hibernate.HibernateJavaTypeMapper"
         />
这里还有一个属性genXDocletTags,如果设置为true,则生成的代码将包含
xdoclet tag。
4)第33行 修改应用名
将原来的
   <property name="name" value="airline"/>
改成
   <property name="name" value="HibernateSample"/>

5:切换到D:\Middlegen-Hibernate-r5目录,运行ant


参考文献
夏昕 《Hibernate 开发指南》

先决条件:

已经安装了ant和MySQL数据库,数据库表已经建立。

 

1、  从Hibernate官方网站下载Middlegen-Hibernate和hibernate-extensions,并解压。

2、  配置Middlegen-Hibernate:

2.1 配置数据库连接

假设连接的数据库是MySQL,在Middlegen-Hibernate-r5\config\database目录中有一个mysql.xml文件,是用来配置MySQL数据库的连接的。内容为:

   <property name="database.script.file" value="${src.dir}/sql/${name}-mysql.sql"/>

   <property name="database.driver.file" value="${lib.dir}/mysql-connector-java-3.0.15-ga-bin.jar"/>

   <property name="database.driver.classpath"      value="${database.driver.file}"/>

   <property name="database.driver"                value="org.gjt.mm.mysql.Driver"/>

   <property name="database.url"                   value="jdbc:mysql://localhost/jboss"/>

   <property name="database.userid"                value="jboss"/>

   <property name="database.password"              value="jboss"/>

   <property name="database.schema"                value=""/>

   <property name="database.catalog"               value=""/>

 

   <property name="jboss.datasource.mapping"       value="mySQL"/>

将mysql-connector-java-3.0.15-ga-bin.jar拷贝到${lib.dir},也就是Middlegen-Hibernate-r5\lib目录。

修改配置文件中的数据库连接项目database.url、database.userid、database.userid 使Middlegen-Hibernate可以找到数据库。

2.2 配置Middlegen-Hibernate-r5的ant运行文件build.xml

<!DOCTYPE project [

    <!ENTITY database SYSTEM "file:./config/database/mysql.xml">

]>

指出使用的数据库配置文件。

<project name="Middlegen Hibernate" default="all" basedir=".">

   <property file="${basedir}/build.properties"/>

   <property name="name" value="hibernatesample"/>

指出你的应用名称。

   <property name="build.gen-src.dir"              value="C:/sample"/>

指出hbm的输出路径。

         <hibernate

            destination="${build.gen-src.dir}"

            package="org.hibernate.sample"

            genXDocletTags="false"

            genIntergratedCompositeKeys="false"

            javaTypeMapper="middlegen.plugins.hibernate.HibernateJavaTypeMapper"

         />

指出hbm所在的包的位置。

指出hbm.xml中是否需要XDoclet Tags。

3、  运行Middlegen-Hibernate:

在Middlegen-Hibernate目录下运行ant,进入Middlegen-Hibernate的图形界面。可以设置表,和字段的特性。然后按Genarate,产生hbm.xml文件。

4、  配置hibernate-extensions

在hibernate-extensions-2.1.2\tools\bin目录有一个setenv.bat文件,改变其内容为:

set JDBC_DRIVER=C:\java\Middlegen-Hibernate-r5\lib\mysql-connector-java-3.0.15-ga-bin.jar

set HIBERNATE_HOME=C:\java\hibernate-2.1.6

 

set CORELIB=%HIBERNATE_HOME%\lib

set LIB=..\lib

set PROPS=%HIBERNATE_HOME%\src

set CP=%JDBC_DRIVER%;%PROPS%;%HIBERNATE_HOME%\hibernate2.jar;%CORELIB%\commons-logging-1.0.4.jar;%CORELIB%\commons-collections-2.1.1.jar;%CORELIB%\commons-lang-1.0.1.jar;%CORELIB%\cglib-full-2.0.2.jar;%CORELIB%\dom4j-1.4.jar;%CORELIB%\odmg-3.0.jar;%CORELIB%\xml-apis.jar;%CORELIB%\xerces-2.4.0.jar;%CORELIB%\xalan-2.4.0.jar;%LIB%\jdom.jar;%LIB%\..\hibernate-tools.jar

注意红色字体提示的均是路径和JAR文件名,一定要正确。

5、运行hibernate-extensions,根据hbm.xml产生POJO文件

在DOS中运行hbm2java c:\sample\org\hibernate\sample\*.xml --output=c:\sample

 

posted on 2006-05-16 00:11 record java and net 阅读(1003) 评论(0)  编辑  收藏 所属分类: java转载的文章


只有注册用户登录后才能发表评论。


网站导航:
 

导航

常用链接

留言簿(44)

新闻档案

2.动态语言

3.工具箱

9.文档教程

友情链接

搜索

最新评论