疯了的Hibernate(4) -- 由数据库生成映射文件 hiswing [原作]
来源:互联网 发布:erp软件下载 dg 编辑:程序博客网 时间:2024/05/16 14:37
疯了的Hibernate(4) -- 由数据库生成映射文件
映射文件是O/R Mapping的关键。如果数据库中表相当多时,手工配置起来就非常耗时。为了快速开发程序,可以通过使用Hibernate官方提供的MiddleGen工具方便的生成映射文件。可以在这里下载:http://prdownloads.sourceforge.net/hibernate/?sort_by=date&sort=desc
MiddleGen是根据数据库表来生成映射文件的,所以首先得将其跟数据库进行配置。具体配置如下:
[1]修改数据库配置文件:
进入MiddleGen目录下的config/database子目录,可以看到有很多不同数据库的配置文件。根据我们的数据库选择,我使用的是MySql,所以打开mysql.xml文件。文件内容如下:
<!--在这里配置JDBC驱动文件,注意,请确保MiddleGen的lib目录下有该驱动-->
<property name="database.driver.file" value="${lib.dir}/mm.mysql-2.0.14-bin.jar"/>
<property name="database.driver.classpath" value="${database.driver.file}"/>
<property name="database.driver" value="org.gjt.mm.mysql.Driver"/>
<!--配置数据库URL-->
<property name="database.url" value="jdbc:mysql:///sports"/>
<!--用户名-->
<property name="database.userid" value="hiswing"/>
<!--密码-->
<property name="database.password" value="123"/>
<property name="database.schema" value=""/>
<property name="database.catalog" value=""/>
<property name="jboss.datasource.mapping" value="mySQL"/>
[2]修改Build.xml文件:
该文件放在MiddleGen的根目录下。它是MiddleGen-Hibernate的Ant构建文件。MiddleGen-Hibernate是通过Build.xml文件的具体参数据来生成映射文件的。修改处如下:
<!DOCTYPE project [
<!ENTITY database SYSTEM "file:./config/database/mysql.xml">
]>
<!--配置Application Name,默认为
airline--><property name="name" value="sports"/>
<!--配置文件输出目录,默认为
${build.dir}/gen-src--><property name="build.gen-src.dir" value="E:/Programme/java/sports"/>
<!--配置对应JAVABEAN(PO)的包,默认为
package="${name}.hibernate"--><!--genXDocletTags设置为true时生成的代码将包含
xdoclet tag,可用来调整映射文件--><hibernate
destination="${build.gen-src.dir}"
package="com.cuitao.sports.po"
genXDocletTags="true"
genIntergratedCompositeKeys="false"
javaTypeMapper="middlegen.plugins.hibernate.HibernateJavaTypeMapper"
/>
运用MS-Dos方式进入MiddleGen的根目录,运行ant,将启动MiddleGen-Hibernate的界面。在此之前,请别忘记启动数据库:)如图:
Domain Class Name :
PO的类名Key Generator:
主键生成器。其中有一些选项,一般选用uuid.hex 方式生成主键将提供最好的性能和数据库平台适应性。Schema Name:
数据库Schema NamePersister:
自定义持久类实现类类名。如果系统除了Hibernate 之外的其它持久层实现机制,如通过存储过程得到数据集,甚至从LDAP中获取数据来填充我们PO。Enable proxies:
代理(用于延迟加载[Lazy Loading])。Dynamic Update:
选定该项后,生成Update SQL 时将不包含未发生变动的字段属性,可以提升SQL执行效率。Implement the Lifecyle interface:
是否实现Lifecyle接口。实现Lifecyle接口后我们就可以在数据库操作之前,之后触发指定操作。以上的配置是针对类进行的。下面将针对属性进行配置。
Hibernate mapping specialty:
映射类型Key=主键,Property=属性。Java property name
:数据库字段对应的PO的属性名。Java Type:
数据库字段对应的PO属性的数据类型。最后,单击窗口顶部的
Generate 按钮,MiddleGen将自动生成这些数据库表所对应的Hibernate映射文件。映射文件是以.hbm.xml 作为后缀的,一个映射文件对应数据库的一个表。- 疯了的Hibernate(4) -- 由数据库生成映射文件 hiswing [原作]
- 疯了的Hibernate(4) -- 由数据库生成映射文件
- 本地数据库和hibernate生成的映射文件不一致
- 由数据表生成hibernate映射文件和实体类
- hibernate根据映射文件生成数据库对象
- Hibernate映射文件反向生成数据库表
- hibernate由数据库表导为映射文件和持久化类的流程
- Hibernate自动生成映射文件的问题
- SSH项目中根据Hibernate的映射文件生成数据库表的方案:
- 使用 hibernate 根据映射文件生成数据库表
- 根据Hibernate映射文件和实体类生成数据库
- MyEclipse-生成Hibernate映射文件
- xdoclet生成hibernate映射文件
- Hibernate自动生成映射文件
- eclipse生成Hibernate映射文件
- xdoclet生成hibernate映射文件
- Hibernate 自动生成映射文件
- 利用MyEclipse的ant插件生成Hibernate的映射文件
- 几个常用开源项目的地址荟萃(转) Yoinn [原作]
- TOMCAT笔记(一)之 目录、虚拟主机、SERVER.XML、TOOL管理原理小记
- Struts入门 lldwolf [原作]
- 在Linux下搭建Web应用环境(原创) chenyun2000 [原作]
- EJB的专用术语解释 chensheng913 [原作]
- 疯了的Hibernate(4) -- 由数据库生成映射文件 hiswing [原作]
- Struts 1.2.1新特点简介(1) kui [原作]
- [Fall in Flakes] Yiruma 的“初恋”
- 获取任务栏状态
- Java行业的圣经-四本最重要的个人藏书 yuanqingfei [原作]
- WebWork2与Struts比较
- Java中的事务处理 dengzi725 [原作]
- Java中的事务处理 dengzi725 [原作]
- Java中static、this、super、final用法简谈 chensheng913 [原作]