以下我是配置一个程序的配置步骤与心得等。
0:测试过程中用到的几种jdbc连接db2的方式:
1: Class.forName("com.ibm.db2.jcc.DB2Driver").newInstance();
conn= DriverManager.getConnection("jdbc:db2://127.0.0.1:50000/test1","db2admin","admin");
2: Class.forName("COM.ibm.db2.jdbc.app.DB2Driver").newInstance();
conn= DriverManager.getConnection("jdbc:db2:test1","db2admin","admin");
//本地需要安装了客户端,并且目标数据库已经编目到本地。test1就应该是它的本地别名。
3: Class.forName("COM.ibm.db2.jdbc.net.DB2Driver").newInstance();
conn= DriverManager.getConnection("jdbc:db2://*。*。*。*:5000/test","db2admin","admin");
//本地已经安装了客户端。
使用格式如下: Driver Name:COM.ibm.db2.jdbc.net.DB2Driver URL Pattern:jdbc:db2:ServerIP:databasename
(目标DB2系统侦听该服务于默认端口6789,否则还需要在 URL Pattern 中指定目标端口号)
1: .拷db2驱动到D:\apache-tomcat-5.5.25\common\lib目录,包括db2jcc.jar,db2jcc_license_cisuz.jar,db2jcc_license_cu.jar
2: 修改D:\tomcat5.5.12\apache-tomcat-5.5.12\conf下的context.xml 与web.xml 两个文件。
web.xml :
...
test
jdbc/Mydatasource
javax.sql.DataSource
Container
context.xml:
WEB-INF/web.xml
auth="Container" description="test"
name="jdbc/Mydatasource"
type="javax.sql.DataSource"
password="tes,,2"
driverClassName="COM.ibm.db2.jdbc.app.DB2Driver"
maxIdle="2"
maxWait="5000"
username="db2inst1"
url="jdbc:db2:tesb"
maxActive="4" />
其中各串根据需要修改
3:重新启动tomcat.
4: 数据库建立的时候,默认的是GBK码。我的tomcat5不支持,总是报编码错误。
解决方案:
1): 建数据库的时候,采用UTF-8码建立
采用连接方式:
Class.forName("com.ibm.db2.jcc.DB2Driver").newInstance();
conn= DriverManager.getConnection("jdbc:db2://127.0.0.1:50000/test1","db2admin","admin");
2) : 不是任何时候都能随便把一个 GBK码的数据库干掉,从新建立一个UTF-8码的,这时候(采用1)的连接方式),可以:
i) 不JDK 换成IBM的(SUN的缺字符级),需要1。5以上。
测试结果: 找不到IBM的JDK1。5以上版本。失败。
ii:) 虽然使用的非IBM的JDK,或者小于1。5版本的ibm的JDK ,但拷贝过去一个字符级也可以解决。
结果:没测试。 具测试过的人称,不行。
iii) 拷贝db2安装目录下的db2jdbc.dll到java_home的bin下(我的本机为D:\Borland\JBuilder2006\jdk1.5\bin),采取下面连接方式:
Class.forName("COM.ibm.db2.jdbc.app.DB2Driver").newInstance();
conn= DriverManager.getConnection("jdbc:db2:test1","db2admin","admin");
结果: 测试通过。
但有个小疑问,用JNDI连接不上,必须每次写串。郁闷。
5: 我的程序里有一个叫init的类,在web.xml(我本机:D:\tomcat5.5.12\apache-tomcat-5.5.12\webapps\english\WEB-INF下)里添加:
Init
Init
服务器启动更新服务器中保存的语言参数
com.init.Init
1
6: 还有什么想不起来了,想起来再加。
阅读(1925) | 评论(0) | 转发(0) |