針對初學者常見的 JSP 數據庫連接問題,提供 Oracle(Thin 模式)與 SQL Server 7.0/2000 的完整可運行代碼,含驅動加載、連接參數、查詢輸出全流程。
create table test(test1 varchar(20), test2 varchar(20)) 並插入測試數據<%@ page contentType="text/html;charset=gb2312" import="java.sql.*" %>
<html><body>
<%
Class.forName("oracle.jdbc.driver.OracleDriver").newInstance();
String url = "jdbc:oracle:thin:@localhost:1521:orcl"; // SID=orcl
String user = "scott", password = "tiger";
Connection conn = DriverManager.getConnection(url, user, password);
Statement stmt = conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_UPDATABLE);
ResultSet rs = stmt.executeQuery("select * from test");
while(rs.next()) {
%>
您的第一個字段:<%=rs.getString(1)%><br>
您的第二個字段:<%=rs.getString(2)%><br>
<%
}
out.print("數據庫操作成功!");
rs.close(); stmt.close(); conn.close();
%>
</body></html>
<%@ page contentType="text/html;charset=gb2312" import="java.sql.*" %>
<html><body>
<%
Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver").newInstance();
String url = "jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=pubs";
String user = "sa", password = "";
Connection conn = DriverManager.getConnection(url, user, password);
Statement stmt = conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_UPDATABLE);
ResultSet rs = stmt.executeQuery("select * from test");
while(rs.next()) {
%>
字段一:<%=rs.getString(1)%><br>
字段二:<%=rs.getString(2)%><br>
<%
}
out.print("數據庫操作成功!");
rs.close(); stmt.close(); conn.close();
%>
</body></html>
學習階段可將邏輯寫在 JSP 中,實際項目建議採用 MVC 模式,分離業務邏輯與視圖,使用連接池管理數據庫連接。