Middlegen-Hibernate-r5使用之 oracle10g(Inber原创)

原创 2006年07月22日 13:46:00

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)

版权声明:本文为博主原创文章,未经博主允许不得转载。

Java 中的 static 使用之静态初始化块

Java 中可以通过初始化块进行数据赋值。如: public class HelloWorld { String name; // 声明变量name String sex; ...
  • liushulin183
  • liushulin183
  • 2015年06月27日 11:06
  • 527

Middlegen-Hibernate-r5 配置教程 (原创)

Middlegen-Hibernate-r5配置 1)得到 Middlegen-Hibernate-r5包 后将其解压到d:/Middlegen-Hibernate-r5下载方式:方式一:从官网下载 ...
  • chenpy
  • chenpy
  • 2008年07月18日 17:04
  • 5050

如何删除oracle10g中的垃圾表?(Inber原创)

 使用oracle10g的朋友可能会发现以前删除的表在数据库中出现了很多垃圾表,如:BINjR8PK5HhrrgMK8KmgQ9nw==之类的表无法删除无法用delete 删除,一般不影响正常使用,但...
  • alex197963
  • alex197963
  • 2007年05月22日 10:58
  • 633

jsp 数组分页显示 (Inber 原创)

(搜索关键字 jsp,java,数组分页)/*Inberkonginber520@yahoo.com.cnQQ:27096282数组分页技术arrayTest.jsp*/String [] conte...
  • Inber
  • Inber
  • 2006年05月30日 11:51
  • 3700

【原创】Jmeter使用之脚本录制回放

发表人:snappyboy | 发表时间: 2005年一月14日, 22:40 最近一直在用LoadRunner做测试,同时也不忘用Jmeter来实现比较复杂的场景。今天就把我使用中的一些小小技巧做一...
  • wyingquan
  • wyingquan
  • 2005年03月29日 10:14
  • 5663

Java中通过反射越过泛型检查

要想Java通过反射越过泛型检查,你就得先明白,泛型是在什么时候起作用的。 泛型是在编译期间起作用的。在编译后的.class文件中是没有泛型的。所有比如T或者E类型啊,本质都是通过Object处理的。...
  • Marvel__Dead
  • Marvel__Dead
  • 2016年11月21日 19:31
  • 896

jsp 数组分页显示 (Inber 原创)

/*Inberkonginber520@yahoo.com.cnQQ:27096282数组分页技术arrayTest.jsp*/String [] contentArray={};contentArr...
  • freedomsky120
  • freedomsky120
  • 2007年12月24日 11:59
  • 401

5.使用RecyclerView优雅的实现瀑布流效果

从前我们想实现一个瀑布流效果是很难得,需要自己自定义控件,可以说是很麻烦,而且性能也好优化,但是现在就不一样了,因为RecyclerView到来了,他可以很...
  • renpingqing
  • renpingqing
  • 2017年04月04日 13:43
  • 981

Quartz 定时器的使用之 XML 配置方式 (二)

最近发现一个更好的配置定时器的方法, 废话不多说,开搞: 1. 导入 jar 包,这里使用的 quartz 包是 spring 的所以无需引入其他 jar 2. 在你的配置文件目录下 创建一个 x...
  • andrewby
  • andrewby
  • 2016年12月07日 22:10
  • 309

Java Bean 应用-预定构件(Inber 原创)

概述:这是两个Java bean应用的例子,实现航空预定机票的功能。 预定构件功能说明: 1,预定构件应包含二个面板,预定座位面板与乘客面板 2,在装入预定构件时不应有可用的乘客面板 3,当用户打入要...
  • Inber
  • Inber
  • 2004年08月01日 03:34
  • 1468
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Middlegen-Hibernate-r5使用之 oracle10g(Inber原创)
举报原因:
原因补充:

(最多只允许输入30个字)