首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 數據庫知識 >  >> SQL Server 資料庫 >> 關於SqlServer

JTDS 連線 SQL Server 完整範例 (JSP/Java)

     編輯:關於SqlServer

JTDS 是開源的 SQL Server JDBC 驅動程式,效能優於微軟官方驅動且支援完整 JDBC 3.0 規格。本文提供完整 JSP 連線範例,涵蓋驅動載入、連線池建立、查詢執行與中文編碼處理。

環境需求

  • JDK 1.4.2+ / Tomcat 5+
  • SQL Server 2000 SP3+
  • JTDS 1.1+(0.9.1 以下版本中文易亂碼)
  • 下載:SourceForge JTDS 專案頁

完整 JSP 範例程式碼

<%@ page import="java.sql.*, java.util.*, net.sourceforge.jtds.jdbc.Driver" contentType="text/html;charset=Big5" %>
<html><head><title>JTDS 測試</title></head><body>
<%
    Connection con = null;
    Statement stmt = null;
    ResultSet rs = null;
    try {
        // 1. 載入驅動 (JTDS 1.2+ 可省略 Class.forName)
        Class.forName("net.sourceforge.jtds.jdbc.Driver");
        
        // 2. 建立連線 - 建議使用連線池 (如 DBCP, HikariCP)
        String dbUrl = "jdbc:jtds:sqlserver://localhost:1433/J2EEone;user=sa;password=caicaibao;charset=Big5";
        con = DriverManager.getConnection(dbUrl);
        
        // 3. 執行查詢
        stmt = con.createStatement();
        rs = stmt.executeQuery("SELECT id, name, title, price FROM books");
        
        // 4. 輸出結果
        out.println("<table border='1' width='400'><tr><th>ID</th><th>Name</th><th>Title</th><th>Price</th></tr>");
        while (rs.next()) {
            // JTDS 1.2+ 直接 getString 即可正確處理編碼,無需手動 ISO8859-1 轉碼
            out.println("<tr><td>" + rs.getString(1) + "</td><td>" + rs.getString(2) 
                + "</td><td>" + rs.getString(3) + "</td><td>" + rs.getString(4) + "</td></tr>");
        }
        out.println("</table>");
    } catch (Exception e) {
        out.println("錯誤: " + e.getMessage());
        e.printStackTrace();
    } finally {
        // 5. 關鍵:務必關閉資源,避免洩漏
        try { if (rs != null) rs.close(); } catch (Exception ignore) {}
        try { if (stmt != null) stmt.close(); } catch (Exception ignore) {}
        try { if (con != null) con.close(); } catch (Exception ignore) {}
    }
%>
</body></html>

關鍵連線參數說明

生產環境最佳實務

  1. 必須使用連線池:Tomcat 配置 JNDI DataSource (DBCP/HikariCP),避免頻繁建立/關閉連線。
  2. 參數化查詢:使用 PreparedStatement 防止 SQL 注入。
  3. 關閉 AutoCommit:批次作業時手動控制交易。
  4. 驅動升級:JTDS 1.3.1 為最後穩定版,新專案建議改用 Microsoft 官方 mssql-jdbc 驅動 (支援 JDBC 4.2+、AlwaysOn、Azure AD 驗證)。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved
參數說明建議值
charset字元編碼,解決中文亂碼關鍵Big5 / UTF-8 / GBK
domainWindows 網域驗證時指定網域您的 AD 網域名
instance命名執行個體名稱 (若非預設執行個體)SQLEXPRESS 等
useCursors是否使用伺服器端游標true (大量資料分頁時)