- 浏览: 284565 次
- 性别:
- 来自: 福建
文章分类
- 全部博客 (183)
- 软件架构 (6)
- JEE (21)
- Struts (2)
- Spring (8)
- 权限控制 (10)
- iBATIS (3)
- Hibernate (15)
- Freemarker (1)
- SpringSide (2)
- JBoss (1)
- Seam (2)
- jBPM (2)
- 开源 (2)
- 开发工具 (5)
- 打包构建 (14)
- JSF (1)
- 日志 (3)
- 搜索 (3)
- 定时器 (1)
- 单元测试 (3)
- IoC (3)
- JGroups (3)
- JavaFX (1)
- Web (9)
- Javascript (14)
- Ajax (0)
- qooxdoo (0)
- Dojo (2)
- ExtJS (2)
- JQuery (5)
- ZK (1)
- 数据库 (6)
- 正则表达式 (1)
- ruby (3)
- php (1)
- 数据结构与算法 (1)
- ubuntu (3)
- OSGi (1)
- 高性能网站架构 (12)
最新评论
-
FX夜归人:
...
Lucene为数据库建索引 -
yu46612143:
...
m2eclipse 安装及使用 -
lenomon:
可以看看这个demo, M2eclipse 设置 Mave ...
m2eclipse 安装及使用 -
Smile__xtj:
aa
Java对象验证框架 OVal -
tuoxiaohu:
这个插件不支持3.X了,只有4.X的,请问你有3.1.X的pl ...
在Eclipse WTP中加入Resin server adapter
Middlegen-Hibernate-r5配置
1得到 Middlegen-Hibernate-r5包 后将其解压到d:\Middlegen-Hibernate-r5
2 把数据库驱动程序(这里用的是ojdbc14.jar)放到d:\Middlegen-Hibernate-r5 \lib目录下
3 配置数据参数D:\Middlegen-Hibernate-r5\config\database\oracle.xml
<property environment="env"/>
<property name="database.script.file" value=""/>
<property name="database.driver.file" value="${lib.dir}/ojdbc14.jar"/>
<property name="database.driver.classpath" value="${database.driver.file}"/>
<property name="database.driver" value="oracle.jdbc.driver.OracleDriver"/>
<property name="database.url" value="jdbc:oracle:thin:@192.168.0.1:1521:dbname"/>
<property name="database.userid" value="username"/>
<property name="database.password" value="password"/>
<property name="database.schema" value="username"/>
<property name="database.catalog" value=""/>
<!--property name="jboss.datasource.mapping" value="Oracle7"/-->
<property name="jboss.datasource.mapping" value="Oracle10g"/>
<!--property name="jboss.datasource.mapping" value="Oracle8"/-->
注意:将原文件修改黑体部分改成你需要的数据库配置,特别需要强调的是在oracle中要指定 <property name="database.schema" value="username"/>如未指则在生成时会出问题.value值和database.userid值一样
注意 问题1:如未指定database.schema则会出现以下错误:
D:\Middlegen-Hibernate-r5\build.xml:148: middlegen.MiddlegenException: Middlegen
successfully connected to the database, but couldn't find any tables. Perhaps t
he specified schema or catalog is wrong? -Or maybe there aren't any tables in th
e database at all?
Configured schema:
Configured catalog:
Available schemas:
ANONYMOUS
CTXSYS
...
Available catalogs:
问题1解决办法按本节的正确配置注意事项.
注意问题2: 如果未删除oracle10g中的垃圾表如"BINjR8PK5HhrrgMK8KmgQ9nw== "见分则会出现如下错误:
D:\Middlegen-Hibernate-r5\build.xml:148: middlegen.MiddlegenException: Database
problem:ORA-01424: 转义符之后字符缺失或非法
问题解决办法:删除oracle10g中的垃圾表然后再按生成步骤进行,删除oracle10g中的所有垃圾表见文章如http://blog.csdn.net/inber/archive/2006/07/22/958372.aspx
4 修改build.xml引用的数据库配置
找到
<!DOCTYPE project [
<!ENTITY database SYSTEM "file:./config/database/hsqldb.xml">
]>
将其改为:
<!DOCTYPE project [
<!ENTITY database SYSTEM "file:./config/database/oracle.xml">
]>
5 修改hbm文件的输出目录
原为 <property name="build.gen-src.dir" value="${build.dir}/gen-src"/>
默认为build\gen-src目录,当然你也可以改成你期望的如
改为<property name="build.gen-src.dir" value="c:\hbm"/>
6 修改hbm文件的包名
<hibernate
destination="${build.gen-src.dir}"
package="${name}.hibernate"
genXDocletTags="flase"
genIntergratedCompositeKeys="false"
javaTypeMapper="middlegen.plugins.hibernate.HibernateJavaTypeMapper"
/>
其中${name}默认值为airline 也就是 package的默认值为airline.hibernate使用默认值生成一个.hbm文件时就对应的属于airline.hibernate包可以把它改为你要的包如下:
<hibernate
destination="${build.gen-src.dir}"
package="model"
genXDocletTags="flase"
genIntergratedCompositeKeys="false"
javaTypeMapper="middlegen.plugins.hibernate.HibernateJavaTypeMapper"
/>
则生成后的包为model
这里有个属性 genXDocletTags 如设置为True生成的代码将包含xdoclettag,为以后的开发过程中用借助xdoclet进行映射调整提供帮助
至此对middlegen的配置完毕,用ant 运行Middlegen-Hibernate-r5,从数据库生成对应的hbm文件.
用ant运行结果:
(图1 middlegn 运行结果)
(图2 生成的***.hbm.xml)
************************************
hibernate-extensions-2.0应用配置
************************************
这是hibernate的工具,/tools下有3个工具
class2hbm.bat 根据你自己对应表所写的java文件,生成相应的*.hbm.xml文件
ddl2hbm.bat 根据你的数据库表,自动生成*.hbm.xml和*.java文件(如果不需要详细的配置,建议用这种方式生成*.xml和*.java文件)
hbm2java.bat 根据*.hbm.xml生成相应的*.java文件
用之前,首先得用ant编译
【注意的地方】
build.xml
<property name="hibernate-core.home" value="../../hibernate-2.0"/>//找到该行,40行左右
value为你得hibernate解压目录
【编译完毕】
编译完的文件存放在/tools/target/hibernate-tools-2.0/
现在可以用编译完的执行文件进行映射转化了
【应用】
hbm2java.bat
1、进入命令行模式,进入hibernate-tools-2.0目录,进入/bin
2、首先执行setenv.bat,设置一下环境变量,运行前,先检查一下setenv.bat文件,用文本编辑器打开,找到如下行:
set JDBC_DRIVER=C:\\Progra~1\\SQLLIB\\java\\db2java.zip;C:\\mm.mysql-2.0.14\\mm.mysql-2.0.14-bin.jar;D:\\j2sdk1.4.1\\lib\\JSQLConnect.jar
//将你的JDBC驱动添加进去
rem set HIBERNATE_HOME=..\\..\\hibernate-2.0//原来的
set HIBERNATE_HOME=D:\\hiber\\hibernate-2.0//改成你当前hibernate-2.0所在目录
3、执行hbm2java.bat D:\\hiber\\com\\test\\*.xml //后面所跟的是你用Middlegen Hibernate所生成的*.hbm.xml文件
ddl2hbm.bat
1、2步骤如hbm2java
3、运行ddl2hbm,会弹开一个图形界面
4、在Connection面板里,输入JDBC驱动的相关信息,如:
DriverClass:com.jnetdirect.jsql.JSQLDriver
ConnectionUrl:jdbc:JSQLConnect://服务器名/database=数据库名&user=用户名&password=密码(注意这是我所用的驱动支持将用户名和密码放在后面这种格式)
UserName:用户名(我的ConnectionUrl已填写该信息,这里可不填)
PassWord:密码(我的ConnectionUrl已填写该信息,这里可不填)
5、在Code面板里,可以定义包名
6、在Output面板里,可以定义文件输出路径
7、设置好后,进入Table面板,点击tables…按钮,如果数据库连接成功,则会弹开一个小面板,选择你要映射的数据库,点击确定即可,此时
Table面板里就会显示该数据库的所有表格,选择你需要的表,点击“Generate”,则在输出路径里生成*.hbm.xml和*.java文件
【注意的地方】
因为Sqlserver不支持hibernate里的sequences类型,在测试代码时会出错,你打开生成的*.hbm.xml
将
<id column="test_id" name="id" type="java.lang.Long">
<generator class="identity"/>//这里改成identity即可
</id>
发表评论
-
hibernate中自定义主键生成器
2009-04-07 22:38 4021背景: Hibernate(目前使用的版本是3.2)中提供了多 ... -
Hibernate 主键生成方式
2009-04-07 22:22 22151 assigned: 主键由外部程 ... -
Hibernate开发总结
2009-04-03 11:55 854终于有时间改middlegen。以前没真正使用Hibernat ... -
Hibernate相关项目介绍
2009-03-26 14:14 817http://www.oschina.net/p/hibern ... -
eclipse3.4关于hibernate tools BUG的解决
2009-03-06 10:44 1325发表人及其连接:sys53 http://sys53.itey ... -
生成映射文件和持久化对象
2009-03-06 10:02 877http://book.csdn.net/bookfiles/ ... -
给hibernateTools写个插件
2009-03-06 09:47 1215CowNew开源团队网站 http://www.cownew. ... -
Hibernate Tools for Eclipse插件的安装和使用
2009-03-06 09:46 3687一直想抛弃Myeclipse,今天终于找到了不用它的理由, E ... -
Hibernate3.2 核心包
2009-03-05 21:16 935hibernate 核心包与核 ... -
Hibernate3中的hbm2java和hbm2ddl的ant脚本实现
2009-03-05 20:54 23261.Hibernate-tools.jar这个包已经不像以前那 ... -
Hibernate EntityManager - Hibernate的EJB3.0的JPA标准实现
2009-03-05 20:52 2230Hibernate EntityManager实现了EJB3. ... -
框架Hibernate Validator 简介
2009-03-05 20:43 1413用Annotations 给类或 ... -
Hibernate Search
2009-03-05 20:39 1884不久前Hibernate推出了Hibernate Search ... -
Hibernate 工具
2009-03-05 20:29 750Hibernate Tool 使用说明 http://www ...
相关推荐
在Middlegen-Hibernate-r5中,Middlegen的作用在于根据数据库中的表结构生成Hibernate所需的配置文件,如hibernate.cfg.xml和.hbm.xml文件。这些文件定义了数据库表与Java实体类的映射关系,使得Hibernate能够自动...
【标题】"Middlegen-Hibernate-r5,hibernate-extensions-2.1.3" 涉及的是两个重要的Hibernate相关工具:Middlegen和Hibernate Extensions,这两个工具都是在开发基于Java的数据库应用程序时使用的辅助工具。...
Hibernate的Middlegen-Hibernate-r5工具包可以生成映射文件及POJO文件,简化开发。... 关于Hibernate的关系映射,其中除了注解方式,还可以通过XML方式,此文件是根据数据库生成XML文件的一种工具。...
使用hibernate-extensions和Middlegen-Hibernate,开发者可以快速搭建起基于Hibernate的项目,大大缩短项目的启动时间。例如,当你已经有了一个完整的数据库结构,只需要运行Middlegen-Hibernate,就可以得到一套...
总之,Middlegen-Hibernate-r5.rar这个压缩包为我们提供了一个全面了解和掌握Middlegen与Hibernate集成使用的实践平台。通过深入学习和实践,我们可以提高数据库管理与Java开发的技能,为项目开发带来更大的便利。在...
Middlegen-Hibernate的结合使用,使得开发者可以从繁琐的手动创建映射文件中解脱出来,专注于业务逻辑的实现,提高了开发效率。然而,值得注意的是,随着技术的发展,现代的ORM框架如Hibernate本身已经提供了逆向...
《Hibernate与Middlegen-Hibernate-r5:数据库持久化框架深度解析》 在Java开发领域,Hibernate是一个广泛应用的开源对象关系映射(ORM)框架,它简化了数据库操作,使得开发者能够以面向对象的方式处理数据库交互...
1. **安装配置**:首先,你需要下载并配置Middlegen-Hibernate的相关依赖库,如题目中提到的`hibernate-extensions-2.1.3`、`apache-ant-1.8.4`、`Middlegen-Hibernate-r5`和`hibernate-2.1`。Apache Ant是Java项目...
《Middlegen-Hibernate配置详解》 在Java开发领域,Hibernate作为一款强大的对象关系映射(ORM)框架,极大地简化了数据库操作。然而,对于初学者或者开发者来说,正确配置和使用Hibernate可能会遇到一些挑战。...
hibernate2.1.8 下的 hibernate2.jar 及 lib 目录下的 jar 文件、hibernate-extensions 下的 hibernate-tools.jar 及 lib 目录下的 jar 文件、xdoclet-bin-1.2.3 下的 jar 文件全部拷贝到 middlegen- hibernate-r5 ...
Middlegen,作为`Middlegen-Hibernate-r5.zip`的主要内容,是针对Hibernate的一个实用工具,用于自动生成数据库模式到Java类的映射代码,极大地提高了开发效率。 1. Hibernate扩展: Hibernate扩展是开发者社区为...
maven-middlegen-plugin-2.1
通过下载并解压“middlegen-2.1-src”文件,我们可以研究其内部实现,甚至根据项目需求对其进行二次开发。 总结来说,Middlegen 2.1是一款高效且灵活的ORM工具,它简化了Java应用程序与数据库之间的交互,降低了...
接下来是"Middlegen-Hibernate-r5.zip",Middlegen是一款基于Hibernate的数据库建模工具,它可以自动生成Hibernate映射文件和Java持久层实体类。Hibernate是Java领域最流行的ORM(对象关系映射)框架,它允许开发者...
maven-middlegen-plugin-2.1.jar
2. 安装`Middlegen 2.1`:解压`middlegen-2.1`压缩包,通常包含`middlegen.jar`和其他依赖库。 3. 创建`build.xml`:在你的项目根目录下创建`build.xml`,并在其中定义`middlegen`任务。例如: ```xml ...
【Middlegen与Hibernate Extensions详解】 在Java世界中,Hibernate是一个非常流行的持久化框架,它极大地简化了数据库操作,使得开发者可以专注于业务逻辑而非繁琐的数据访问层代码。Middlegen和Hibernate ...
hibernate-extensions-2.1.2.zip hibernatetutorial.zip Middlegen-Hibernate-r4.zip Middlegen-Hibernate-r4.zip