快速业务通道

让Struts与Hibernate顺利协同工作 - 编程入门网

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-06-24
们这里采用 Middlegen-Hibernate来实现 数据库到.hbm.xml文件的转化,用Hibernate-Extension工具包中的 hbm2java 来实现 .hbm.xml 到 .java 文件的转化!

让Struts与Hibernate顺利协同工作 - 编程入门网

查找关键字”!ENTITY”,得到:

<!DOCTYPE project [ <!ENTITY database SYSTEM "file:./config/database/hsqldb.xml"> ]>

b) Application name

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

c) 输出目录

查找关键字“name="build.gen-src.dir"”,得到:

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

d) 对应代码的Package name

<hibernate destination="${build.gen-src.dir}" package="${name}.hibernate" genXDocletTags="false" genIntergratedCompositeKeys="false" javaTypeMapper="middlegen.plugins.hibernate.HibernateJavaTypeMapper" />

配置完成后,在MiddleGen 根目录下运行ant,就将出现MiddleGen的界面:

选择需要的表,单击窗口顶部的Generate 按钮,MiddleGen 即为我们生成这些数据库表所对应的Hibernate映射文件。

接下来的工作通过Hibernate Extension 来完成,Hibernate Extension 的tools\bin目录下包含三个工具:

1.hbm2java.bat

根据映射文件生成对应的POJO。通过MiddleGen 我们已经得到了映射文件,下一步就是通过hbm2java.bat工具生成对应的POJO。

2.class2hbm.bat

根据POJO class 生成映射文件,这个工具很少用到,这里也就不再详细介绍。

3.ddl2hbm.bat

由数据库导出库表结构,并生成映射文件以及POJO。这个功能与MiddleGen的功能重叠,但由于目前还不够成熟(实际上已经被废弃,不再维护),提供的功能也有限,所以我们还是采用MiddleGen生成映射文件,之后由hbm2java根据映射文件生成POJO 的方式。

这里我们使用第一个hbm2java.bat,利用刚才生成的.hbm.xml文件自动生成 java 文件。

为了使用这个工具,首先我们需要配置一些参数,打开tools\bin\setenv.bat 文件,修改其中的JDBC_DRIVER和HIBERNATE_HOME环境变量,使其指向我们的实际JDBC Driver文件和Hibernate所在目录。同时检查一下环境变量CP中的各个项目中是否实际存在,特别是%CORELIB%下的jar文件,某些版本的发行包中,默认配置中的文件名与实际的文件名有所出入(如%CORELIB%\commons-logging.jar, 在Hibernate 发行包中,可能实际的文件名是commons-logging-1.0.3.jar,诸如此类)。

使用hbm2java,根据MiddleGen生成的映射文件生成Java 代码:

打开Command Window,在tools\bin目录下执行:

hbm2java c:\sample\org\hibernate\sample\*.xml --output=c:\sample\

通过以上步骤我们就生成了所需要的所有基本配置文件。接下来就可以来初始化这些配置啦。

让Struts与Hibernate顺利协同工作(3)

时间:2009-12-07

实战篇

在这一节我们要配置一个完整的应用配置。其实每一个单独拿出来都能写本书,不过我只是侧重对自己总结,在以后我会不断地把学习的经验教训写下来。

一,Log4j 的初始化

配置log4j.properties

### direct log messages to stdout ### #log4j.appender.stdout=org.apache.log4j.ConsoleAppender #log4j.appender.stdout.Target=System.out #log4j.appender.stdout.layout=org.apache.log4j.PatternLayout %c{1}:%L - %m%n #log4j.appender.stdout.layout.ConversionPattern=%-5p %d{yyyy-MM-dd HH:mm:ss} %l%n%m%n log4j.logger.seerlog=DEBUG,A2 log4j.appender.A2=org.apache.log4j.DailyRollingFileAppender log4j.appender.A2.file=d:\\log\\applog.txt log4j.appender

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号