服务热线:13616026886

技术文档 欢迎使用技术文档,我们为你提供从新手到专业开发者的所有资源,你也可以通过它日益精进

位置:首页 > 技术文档 > JAVA > 新手入门 > 基础入门 > 查看文档

hibernate中的middlegen入门指南

hibernate中的middlegen入门指南

 

 

 

目标:利用middlegen生产hbm.xml文件

工具:

1middlegen-hibernate-r5 相关连接

2hibernate-2.1.8 相关连接

3hibernate-extensions-2.1.3 相关连接

4xdoclet-bin-1.2.3相关连接

5ant-1.6.5 相关连接

6j2dk1.4以上

工作步骤:

1、  安装好j2dk,并设好java_home

2、  安装好ant(一般解压到某个目录即可),并设好ant_home

3、  设置好pathclasspath

 

 

 

设置好以后,可以在dos提示下运行set命令查看,以下是我设置好后运行set的结果,供参考:

d:/javatools/middlegen-hibernate-r5>set

allusersprofile=c:/documents and settings/all users

ant_home=d:/ant-1.6.5

appdata=c:/documents and settings/administrator/application data

c51inc=d:/javawebstudio/c51/inc

c51lib=d:/javawebstudio/c51/lib

classpath=.;c:/java/jdk1.5.0_01/lib;c:/java/jdk1.5.0_01/lib/tools.jar;c:/java/jdk1.5.0_01/lib/dt.jar;d:/javatools/apache-ant-1.6.5/lib/ant.jar;

cloudscape_install=d:/eclipse_plugin/cloudscape

clusterlog=c:/windows/cluster/cluster.log

commonprogramfiles=c:/program files/common files

computername=smxsh

comspec=c:/windows/system32/cmd.exe

homedrive=c:

homepath=/documents and settings/administrator

java_home=c:/java/jdk1.5.0_01

logonserver=//smxsh

number_of_processors=1

os=windows_nt

path=.;c:/java/jdk1.5.0_01/bin;c:/windows/system32;c:/windows;c:/windows/system32/wbem;d:/tools/groovy-1.0-beta-9/bin/;d:/ant-1.6.5/bin;c:/php;

pathext=.com;.exe;.bat;.cmd;.vbs;.vbe;.js;.jse;.wsf;.wshprocessor_architecture=x86

processor_identifier=x86 family 15 model 2 stepping 9, genuineintel

processor_level=15

processor_revision=0209

programfiles=c:/program files

prompt=$p$g

sessionname=console

systemdrive=c:

systemroot=c:/windows

temp=c:/docume~1/admini~1/locals~1/temp

tmp=c:/docume~1/admini~1/locals~1/temp

tomcat_home=d:/eclipse_plugin/jakarta-tomcat/

userdomain=smxsh

username=administrator

userprofile=c:/documents and settings/administrator

windir=c:/windows

 

 

 

注意加粗红体字部分。

个人体会ant_home设置时不能包含bin目录,否则运行ant不会找builder.xml文件,正常运行时,如果当前目录下没有builder.xml文件,会提示:

d:/javatools>ant

buildfile: build.xml does not exist!

build failed

4、  以上工作做好后需要配置数据库了,用mysql时情况:

(1)       安装好mysql4.1,设置root密码:root

(2)       建立数据库,脚本如下:

create database `test4_4` /*!40100 default character set gb2312 */;

3)建立表tpassport

drop table if exists `tpassport`;

create table `tpassport` (

  `id` int(11) not null auto_increment,

  `serial` varchar(30) default null,

  `expiry` int(11) default null,

  primary key  (`id`)

) engine=innodb default charset=gb2312;

4)建立表tuser

drop table if exists `tuser`;

create table `tuser` (

  `id` int(11) not null auto_increment,

  `age` int(11) default null,

  `name` varchar(50) default null,

  primary key  (`id`),

  constraint `fk2` foreign key (`id`) references `tpassport` (`id`) on delete cascade on update cascade

) engine=innodb default charset=gb2312;

 

 

 

以上建立的表已经有外键约束。

个人体会:建立数据库时选择数据库类型为innodb,就可以使用外键等功能

5、  下载mysql-mysql-connector-java-3.1.10,将jar文件拷贝到middlegenhibernater5下的lib

6、  hibernate2.1.8下的hibernate2.jarlib目录下的jar文件、hibernate-extensions下的hibernate-tools.jarlib目录xiajar文件、xdoclet-bin-1.2.3下的jar文件全部拷贝到middlegenhibernater5下的lib中。

注意:可能最后middlegenhibernater5下的lib中有重名(虽然版本不同)的jar文件,仅保留版本较新的jar文件,否则运行ant时会提示:

d:/javatools/middlegen-hibernate-r5>ant middlegen

buildfile: build.xml

init:

…….

[middlegen] exception in thread "awt-eventqueue-0" java.lang.incompatibleclassch

angeerror

[middlegen]     at middlegen.kindfileresourceloader.getresourcestream(kindfilere

……...

7、  修改middlegen-hibernate-r5/config/database/下的mysql.xml文件

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

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

<!—这里的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/test4_4"/>

<!—数据库名为test4_4à

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

<!—数据库连接用户名为rootà

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

<!—数据库连接用户名root的密码为rootà

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

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

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

8、  修改middlegen-hibernate-r5下的build.xml文件

1)修改database名为mysql.xml

<!doctype project [

    <!entity database system "file:./config/database/mysql.xml">

]>

2)修改生成的hbm.xml文件所在的包名

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

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

3可选:修改生成的hbm.xml文件所在的目录,可以不改,生成的包含xml文件的包就在

middlegen-hibernate-r5/build/gen-src/

<property name="build.gen-src.dir"  value="${build.dir}/gen-src"/>

9、开始运行:

dos提示下:

1)转到middlegenhibernater5目录下

cd middlegen-hibernate-r5

2)运行middlegen

ant middlegen

3)可以看到如下图内容:

 

4)点击generate,就可以在前面设定的目录下看到生成的包,在包内可以看到xml文件。

扫描关注微信公众号