JSP與DB2資料庫連結的問題網上有很多資料,但筆者發現大部分資料均有誤,無法真正處理與DB2連結的問題,筆者經過研究解決了這個問題,現將我的一點心得發表出來,與君共用。
<%@ page session="false" %>
<%@ page import="java.sql.*"%>
<%@ page import="java.util.*"%>
<html>
<head>
</head>
<body>
<%
String url="jdbc:db2:ch"; //此格式為jdbc:子協議:子名稱,其中ch是資料庫名
String user="db2inst1"; //資料庫連接者ID
String password="db2inst1"; //資料庫連接者密碼
DriverManager.registerDriver(new COM.ibm.db2.jdbc.app.DB2Driver());
//最為關鍵的是這一句,DB2和ORACLE一樣,最好要用顯式建立一個磁碟機執行個體,並用磁碟機管理者註冊它。
//其它資料庫一般用Class.forName("xxxxxxxxxxx ");
Connection conn=null;
try{
conn= DriverManager.getConnection(url,user,password);
Statement stmt=conn.createStatement(); //建立資料庫連接對象
String sql="select * from task";
ResultSet rs=stmt.executeQuery(sql);
%>
<table border=1 cellspacing=1 cellpadding=0 >
<%
while(rs.next()) { //判斷是否記錄集尾
%>
<tr>
<td><%=rs.getString(1)%></td> //取出每一列的值,並顯示
<td><%=rs.getString(2)%></td>
<td><%=rs.getString(3)%></td>
<td><%=rs.getString(4)%></td>
<td><%=rs.getString(5)%></td>
<td><%=rs.getString(6)%></td>
</tr>
<%}
rs.close();
rs=null;
stmt.close();
stmt=null;
}
finally{ // 不管是否有出錯,最後總要關閉連結
if (conn!=null){
conn.close();
}
}
%>
</table>
<body>
<html>
以上程式在AIX4.3+DB27.2+JDK1.3+TOMCAT4.1.6上運行通過。