分享
 
 
 

Hibernate中的Middlegen入门指南

王朝java/jsp·作者佚名  2006-01-31
窄屏简体版  字體: |||超大  

Hibernate中的Middlegen入门指南

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

工具:

1、Middlegen-Hibernate-r5 相关连接

2、hibernate-2.1.8 相关连接

3、hibernate-extensions-2.1.3 相关连接

4、xdoclet-bin-1.2.3相关连接

5、ant-1.6.5 相关连接

6、j2dk1.4以上

工作步骤:

1、 安装好j2dk,并设好JAVA_HOME

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

3、 设置好path和classpath

设置好以后,可以在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-tomcatUSERDOMAIN=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文件拷贝到middlegen-hibernate-r5下的lib中

6、 将hibernate2.1.8下的hibernate2.jar及lib目录下的jar文件、hibernate-extensions下的hibernate-tools.jar及lib目录xia的jar文件、xdoclet-bin-1.2.3下的jar文件全部拷贝到middlegen-hibernate-r5下的lib中。

注意:可能最后middlegen-hibernate-r5下的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)转到middlegen-hibernate-r5目录下

Cd Middlegen-Hibernate-r5

(2)运行middlegen

Ant middlegen

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

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

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有