菜鸟学用middlegen

Posted on 2005-09-14 11:25 Raistlin 阅读(1707) 评论(3)  编辑 收藏 引用 所属分类: Java
俺是java和hibernate和ant的绝对的三料菜鸟。hibernate似乎很好用,但是写表对应的类和.hbm.xml文件实在头大。所以俺想找一款可以自动生成这些文件的工具。

俺找到了middlegen。它的主页地址是http://boss.bekk.no/boss/middlegen/index.html。我google了一些中文网页,提供的地址没有一个不失效的。-_-。光有middlegen还不够,因为它使用ant来配置它的build。它的一个bulid生成的东西就是一堆的你可以用的.java,.hbm.xml,.class,.war文件。真是够贴心的。可是俺觉得它的配置可是一点都不贴心。

你要是没有ant,请先下载ant。俺一直打不开官方的地址,所以从pchome下载http://dlfjgwbn.pchome.net:8080/development/java/apacheant161.zip。解压文件后就可以用了,但等等,你需要安装了jdk,设置了CLASSPATH,JAVA_HOME。然后把ant的目录下的bin文件夹添加到path环境变量,设置ANT_HOME。
我的机器上的设置:
CLASSPATH .;D:\jdk150\lib\tools.jar;D:\jdk150\jre\lib\rt.jar
JAVA_HOME D:\jdk150
Path  D:\apache-ant-1.6.1\bin;
ANT_HOME D:\apache-ant-1.6.1
 
然后下载并解压middlegen。我解压到了D:\hibernate-3.0\middlegen-2.1。好了,现在可以开始build hibernate需要的文件了,有个D:\hibernate-3.0\middlegen-2.1samples的文件夹,它存放了一个build的例子,我决定修改这个例子然后使用。
 
但是再等等。middlegen需要你提供一些必要的配置。它需要连接到你的数据库,所以你需要给它提供数据库的连接信息和驱动库。各种数据库的配置信息在目录D:\hibernate-3.0\middlegen-2.1\samples\config\database 下面。俺的数据库是mssql,所以俺打开了mssql.xml文件,配置了信息如下:
   <property name="database.script.file"           value=""/>
   <property name="database.driver.file"           value="${lib.dir}/mssqlserver.jar"/>
   <property name="database.driver"                value="com.microsoft.jdbc.sqlserver.SQLServerDriver"/>
   <property name="database.url"                   value="jdbc:microsoft:sqlserver://localhost:1433"/>
   <property name="database.userid"                value="sa"/>
   <property name="database.password"              value="haha"/>
   <property name="database.schema"                value="dbo"/>
   <property name="database.catalog"               value="aljoin_info"/>
   <property name="jboss.datasource.mapping"       value="MS SQLSERVER"/>
aljoin_info是俺的数据库名称。并把msbase.jar,mssqlserver.jar,msutil.jar拷贝到D:\hibernate-3.0\middlegen-2.1\samples\lib目录。
然后编辑D:\hibernate-3.0\middlegen-2.1\samples\build.xml文件,将"ENTITY database SYSTEM"的值改成"file:./config/database/mssql.xml"
 
更改这个build的其它属性。build.xml中更改project的属性:
<project name="Middlegen aljoni_info" default="hbm2java" basedir=".">
 ...
 <property name="name"                           value="com.aljoin.gas"/>

删除D:\hibernate-3.0\middlegen-2.1\samples\build下的所有文件。然后打开命令行,
cd D:\hibernate-3.0\middlegen-2.1\samples
ant
这时候ant会自动读build.xml文件,找到project,运行名为"hbm2java"及其依赖的target.因为俺是菜鸟,什么ejb,jbo俺通通用不到.如果你不是菜鸟,可以设置成default="all",而且如果您的系统没有安装jboss之类的会出错,但我想如果您不是菜鸟应该也不会看到这里了hoho :p
 
在跳出的程序界面上按generate。等待结束,然后关闭程序界面。在命令行窗口看到正在生成.java文件的信息。
查看D:\hibernate-3.0\middlegen-2.1\samples\build目录。上帝保佑你会看到一些你需要的文件。
 
到写完这篇烂文,一个早上已经过去,俺又把青春贡献给了党-_-||

Feedback

# re: 菜鸟学用middlegen  回复  更多评论   

2005-09-20 17:46 by jia
为什么我在DOS下输入ant运行middlegen时,后不出现窗口呢?

# re: 菜鸟学用middlegen  回复  更多评论   

2005-09-20 17:49 by Raistlin
也许连接数据库失败了?仔细看一下命令行下面的提示吧

# re: 菜鸟学用middlegen  回复  更多评论   

2005-09-20 18:32 by jia
生成代码都是可以的,就是没有那个窗口。有点奇怪。
只有注册用户登录后才能发表评论。

posts - 49, comments - 14, trackbacks - 0, articles - 0

Copyright © Raistlin