java db2 xml_月光软件站 - 编程文档 - Java - hibernate2对SQL Server2000的支持以及从db2xml,xml2java的完整配置过程...

没法子,我的机子慢了点,近期也找不到Oracle817的安装程序,我懒.只好用SQL Server 2000了.以前我是用Oracle做数据库,配置过程相当简单,这次用SQL server 2000之后,只有一个感觉,"难受",忙东忙西的,搞了一天.希望有类似情况的朋友能看到这遍文章.

************************************

hibernate应用配置说明

************************************

************************************

ant配置

************************************

下载ant,解压

将ant考到c:跟目录

环境变量里加上ANT_HOME=c:\ant

PATH=c:\ant\bin;

进入命令行模式,输入: ant

如:

C:\>ant

Buildfile: build.xml does not exist!

Build failed

出现该显示,说明ant已配置成功

************************************

Middlegen hibernate配置

************************************

是hibernate的O/R Mapping工具http://hibernate.bluemars.net/98.html可以生成*.hbm.xml文件,是hibernate所需的映射文件

下载Middlegen Hibernate,解压,如D:\hiber\Middlegen-Hibernate-r1\

进入目录,

【配置数据库,以MS SQLSERVER为例,JDBC驱动为JSQL Connect(www.j-netdirect.com)】

1、进入/config/database/目录

2、将JSQLConnect.jar驱动考到/lib/目录

3、编辑mssql.xml文件,如下

【编辑Middlegen hibernate配置】

1、编辑build.xml

2、修改数据库默认文件,找到这行,大概在22行左右

//原内容,注解掉

//加上

]>

3、编辑输出的根目录名,找到该行,大概在30行左右

//原内容,注解掉

//加上,value为你想要的,如com

4、编辑输出的包名,找到该行,大概在210行左右

//原内容,注解掉

destination="${build.gen-src.dir}"

package="${name}.test"

/>//加上,生成的xml文件里,会以com.test作为你的package

输出目录为/build/gen-src/com/test/*.hbm.xml(*为对应的表,命名为你自己所定义的名称)

5、定义输出的目录,找到该行,在文档最后

改成你要输出的目录结构,最好以你的包的结构作为目录结构

6、在连接Sql server时,提示数据库连接成功,但说没有表,找到该行

appname="${name}"

prefsdir="${src.dir}"

gui="${gui}"

databaseurl="${database.url}"

initialContextFactory="${java.naming.factory.initial}"

providerURL="${java.naming.provider.url}"

datasourceJNDIName="${datasource.jndi.name}"

driver="${database.driver}"

username="${database.userid}"

password="${database.password}"

schema="${database.schema}"//去掉

catalog="${database.catalog}" //去掉,这样就可以了

>

【配置完毕】

配置完毕后,在根目录下运行ant

则会出现一个可视化的操作界面,如图

默认会根据表名和字段名对应生成相应的名称,当然你也可以自己定义,对应没问题,则可以点击【Generate】,在可发现

/build/gen-src/com/test/*.hbm.xml,会生成相应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

//找到该行,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

//这里改成identity即可

************************************

实际应用

************************************

开发环境Jbuilder9

【配置】

1、点击“TOOLS”-“Configure JDK”-,添加hibernate-2.0/lib里如下jar文件

JSQLConnect.jar

hibernate2.jar

commons-beanutils.jar

commons-collections.jar

commons-dbcp.jar

commons-lang.jar

commons-logging.jar

commons-pool.jar

dom4j.jar

cglib-asm.jar

【应用】

新建工程testhiber

新建一个table1.java文件,可建一个空的

将你上面所映射的*.xml和*.java文件考到JB的工程文档里的SRC目录

编译,可看到classes里有*.class文件,如果没有*.xml,则将生成的*.xml考到所对应的目录

将hibernate-2.0/src/hibernate.properties考到classes目录

编辑hibernate.properties

1、属性文件里默认连接数据库是:HSQLDialect,所以需先该一下

## HypersonicSQL ,注销掉其下面的内容,大概在73行

2、修改## JSQL Driver的属性,hibernate对MS SQL默认用的JSQLConnect驱动,大概在103行

## MS SQL Server

#hibernate.dialect net.sf.hibernate.dialect.SybaseDialect

#hibernate.connection.username sa

#hibernate.connection.password

hibernate.dialect net.sf.hibernate.dialect.SybaseDialect

hibernate.connection.username sa

hibernate.connection.password 12345

## JSQL Driver

#hibernate.connection.driver_class com.jnetdirect.jsql.JSQLDriver

#hibernate.connection.url jdbc:JSQLConnect://WL99LCX27

hibernate.connection.driver_class com.jnetdirect.jsql.JSQLDriver

hibernate.connection.url jdbc:JSQLConnect://gamebus/database=test

其余的配置自己看他的在线文档

来自:http://www.cjsdn.com/post/view?bid=2&id=41689&tpg=1&ppg=1&sty=1&age=0#41689

down_info.asp?id=45051

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值