把DB2的驱动拷贝到/tomcat/common/lib目录里试试看。
解决方案 »
- DefaultTableModel的问题,大家帮帮我。
- 怎么调用另一个方法中数组的值
- Java定时提醒
- Hi,老紫竹,pls help ;use State.java read out the actual state from the split.java!!!!!!!!!!
- 在Creator 中如何把一个.jar 包引入并能调用EJB里面的方法
- Properties类的问题。一直没人解决掉。没人能帮我吗?
- 为什么Java1.4和Tomcat5的路径不要再做设置???
- 帮帮忙!谢谢了!
- 请问,能设置Choice的长度,和宽度吗?
- 一个恼人的IO问题
- 请问那位有Jbuilder9的激活文件?或怎么激活?在线等待!!!!!!!!!
- 怎样从数据库中得到date类型的值。
Class.forName("com.ibm.db2.jdbc.app.DB2Driver ").newInstance();
String url="jdbc:db2://localhost:5000/sample";
//sample为你的数据库名
String user="admin";
String password="xxxx";
Connection conn= DriverManager.getConnection(url,user,password);
并且确定放在了TOMCAT\common\lib或TOMCAT\webapp\yourapp\WEB-INF\lib下面
1) 我在DB2安装目录的"\java"目录下拷贝了db2java.zip并解压到C:\tool\Apache Group\Tomcat 4.1\common\lib\目录下;
2) 并保证"DB2Driver.class"文件已经存在目录 C:\tool\Apache Group\Tomcat 4.1\common\lib\com\ibm\db2\jdbc\app但是执行到语句:
...
Class.forName("com.ibm.db2.jdbc.app.DB2Driver");
...
还是出现 ClassNotFoundException 错误。请问:
a) 我到底是哪里做错了?
b) 还有我没有在tomcat里面设置JNDI,请问这个有关系吗?To:fft123(专杀各类日本畜生)先生,
Class.forName("com.ibm.db2.jdbc.app.DB2Driver").newInstance(); 好像有编译错误来的。
这句话是什么意思来的?
/************************************************
* Connect to DB
************************************************/
Connection conn = null;
Statement stmt = null;
ResultSet rset = null;
try{
//Get DB2 JDBC driver
informationArea.setText("0000000000000000000000");
Class.forName("com.ibm.db2.jdbc.app.DB2Driver");
informationArea.setText("111111111111111111111111111111");
//Connect to DB
conn= DriverManager.getConnection(DB_URL, "wawa", "rossie");
informationArea.setText("333333333333333333");
stmt = conn.createStatement();
String sql = " SELECT BADGE_ID AS ID, "
+ " LASTSEEN AS LASTSEEN, "
+ " MSG_TYPE AS TYPE, "
+ " X_POS AS X, "
+ " Y_POS AS Y "
+ " FROM BADGE_INFO "
+ " ORDER BY LASTSEEN ";
informationArea.setText(sql);
rset = stmt.executeQuery(sql);
int colId = 0;
String colName = null;
while(rset.next()){
//Load data into vector... }
} catch(ClassNotFoundException e){
informationArea.setText("ClassNotFoundException");
e.printStackTrace();
} catch(SQLException e){
informationArea.setText("SQLException");
e.printStackTrace();
}
finally{
if(rset != null){try{rset.close();}catch(SQLException e){}}
rset = null;
if(stmt != null){try{stmt.close();}catch(SQLException e){}}
stmt = null;
if(conn != null){try{conn.close();}catch(SQLException e){}}
conn = null;
}
...
如:C:\tool\Apache Group\Tomcat 4.1\common\lib\db2java.zip
还有要把这个jar加到classpath里才行.看看你的classpath里有没有这个jar另:Class.forName("com.ibm.db2.jdbc.app.DB2Driver").newInstance(); 编译错误就把最后那句去掉,改成:Class.forName("com.ibm.db2.jdbc.app.DB2Driver");
我自己感觉好像加不加这一句都可以,不清楚有什么区别。这句话是告诉DriverManager,我在当前jvm里生成了DB2Driver这个驱动的实例,你可以去用了。
抱歉的是,我按照你的方法试过,好像还是有ClassNotFoundException问题(还是用的最近上面的代码),
我的classpath值如下,实在想不出到底哪里有毛病了:.;C:\tool\Apache Group\Tomcat 4.1\common\lib\servlet.jar;D:\Program Files\SQLLIB\java\db2java.zip;D:\Program Files\SQLLIB\java\runtime.zip;D:\Program Files\SQLLIB\bin; C:\tool\Apache Group\Tomcat 4.1\common\lib\db2java.zip好晚了,我先去睡觉了,have a good day my buddy!
.;C:\jdk1.4\lib\tools.jar;C:\jdk1.4\lib\dt.jar;C:\tool\Apache Group\Tomcat 4.1\common\lib\servlet.jar;D:\Program Files\SQLLIB\java\db2java.zip;D:\Program Files\SQLLIB\java\runtime.zip
http://archives2.real-time.com/pipermail/tomcat-users/2002-July/074093.html
http://www-3.ibm.com/software/data/db2/java/v5/faq.html#q7
描述的似乎是和我一样的问题,按照上面所说的处理了jar文件,还重装了DB2,可是俺的代码ClassNotFoundException错误依旧。谁能帮帮五,再拜!
Connection conn = null;
Statement stmt = null;
ResultSet rset = null;
try{
// DB2 JDBC driver;ibm驱动的第一个COM是大写的,不要改成小写的了,前面说错了
Class.forName("COM.ibm.db2.jdbc.app.DB2Driver");
// connect 2 db,url要写正确
String url = "jdbc:db2://db2ctlsv:5000/laura";
conn= DriverManager.getConnection(url, "admin", "xxxx");
// statement
stmt = conn.createStatement();
..................
}直接连接时tomcat不用配数据源和jndi,这些是你用连接池的时候需要配置的
驱动器 C 中的卷是 本地磁盘
卷的序列号是 BCA6-15F1 C:\tool\Apache Group\Tomcat 4.1\common\lib 的目录2003-11-06 17:59 <DIR> .
2003-11-06 17:59 <DIR> ..
2003-10-27 10:22 45,386 activation.jar
2003-10-27 10:22 72,933 jasper-runtime.jar
2003-10-27 10:22 183,104 jasper-compiler.jar
2003-10-27 10:22 38,836 naming-resources.jar
2003-10-27 10:22 39,523 commons-pool-1.1.jar
2003-10-27 10:22 165,119 commons-collections.jar
2003-10-27 10:22 28,520 naming-common.jar
2003-10-27 10:22 22,327 commons-logging-api.jar
2003-10-27 10:22 736,810 ant.jar
2003-10-27 10:22 280,984 mail.jar
2003-10-27 10:22 79,265 servlet.jar
2003-10-27 10:22 6,727 jdbc2_0-stdext.jar
2003-10-27 10:22 98,496 jndi.jar
2003-10-27 10:22 18,245 naming-factory.jar
2003-10-27 10:22 100,776 commons-dbcp-1.1.jar
2003-10-27 10:22 8,674 jta.jar
2003-09-16 19:05 5,082,050 tools.jar
===================================================================
2002-06-16 21:42 338,990 runtime.jar
2002-06-17 10:10 1,145,243 db2java.jar
2002-06-17 10:10 1,145,243 db2java.zip.bak
2002-06-16 21:42 1,671,552 sqlj.jar
===================================================================
2003-11-17 00:01 0 list.txt
22 个文件 11,308,803 字节
2 个目录 1,505,935,360 可用字节
我以前机器就是这样,什么路径都对,就是不认,tomcat,weblogic都起不起来
害的我后来只好重装系统
1) db2java.zip ---> db2java.jar
C:\tool\Apache Group\Tomcat 4.1\common\lib\db2java.jar2)把db2java.jar加到classpath中去但是,呜呜呜,菩萨拯救我!
><....
换系统还出这种毛病??
classpath里不要带空格再试试
就是tomcat等东西不要安装到有空格的目录里
还不行换个服务器如weblogic试试
一个一个目录对照(包括看又没有DB2Driver这个类),如果不是就错了
“<” APPLET CODE="DisplayAllBedgeApplet.class" WIDTH=530 HEIGHT=750 “>”
“<”B>Sorry, you need a Java-enabled browser.</B“>”
< /APPLET “>”但是我在jsp里面调用则是成功的,数据库表也可以顺利打开,检索到数据。
jsp如下:test.jsp
------------------------------------------------------
<%@ page session="false" %>
<%@ page import="java.sql.*"%>
<%@ page import="java.util.*"%> <html>
<head>
</head>
This is a test to connect to DB2...
<BODY>
<%
String url="jdbc:db2:sample";
String user="db2admin";
String password="88888888";
// DriverManager.registerDriver(new COM.ibm.db2.jdbc.app.DB2Driver()); ==> this is ok too.
Class.forName("COM.ibm.db2.jdbc.app.DB2Driver"); // Driver Type2
Connection conn=null;
try{
conn= DriverManager.getConnection(url,user,password);
Statement stmt=conn.createStatement();
String sql = "select * from wawa.project"; //schema
System.out.println("executing:\n" + sql);
ResultSet rs=stmt.executeQuery(sql);/**/
%>
<table border=1 cellspacing=1 cellpadding=0 >
<%
while(rs.next()) {
int i = 0;
%>
<tr>
<td><%=rs.getString(3)%></td>
<td><%=rs.getString(4)%></td>
<td><%=i * 3%></td>
<td><%=i * 4%></td>
<td><%=i * 6%></td>
<td><%=i * 6%></td>
</tr>
<%
i++;
} // EOF while()
//Clean up.
rs.close();
rs=null;
stmt.close();
stmt=null;
} catch(SQLException e){
e.printStackTrace();
}
finally{ // 不管是否有出错,最后总要关闭连结
if (conn!=null){ conn.close();}
}
%>
</table>
<body>
<html>