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

JavaBean 實戰範例:資料庫存取元件 Jsp2Bean

     編輯:Java 相關知識

前言

本文展示一個簡潔的 JavaBean 範例——Jsp2Bean,示範如何封裝 JDBC 資料庫連線與查詢邏輯,供 JSP 頁面或 Servlet 呼叫,實現資料存取層與表現層的分離。

完整原始碼

package untitled1;

import java.sql.*;

public class Jsp2Bean {
    // 基本屬性
    private String sample = "Start value";
    
    // 資料庫連線設定
    private String strDBDriver = "sun.jdbc.odbc.JdbcOdbcDriver";
    private String strConn = "jdbc:odbc:unititled1";
    private Connection conn = null;
    private ResultSet rs = null;

    // 建構子:載入 JDBC 驅動程式
    public Jsp2Bean() {
        try {
            Class.forName(strDBDriver);
        } catch (ClassNotFoundException e) {
            System.out.println("DataBase Open Error: " + e.getMessage());
        }
    }

    // Simple 屬性:sample
    public String getSample() { return sample; }
    public void setSample(String newValue) {
        if (newValue != null) sample = newValue;
    }

    // 執行查詢並回傳 ResultSet
    public ResultSet exeCuteQuery(String strSQL) {
        rs = null;
        try {
            conn = DriverManager.getConnection(strConn);
            Statement stmt = conn.createStatement();
            rs = stmt.executeQuery(strSQL);
        } catch (SQLException ex) {
            System.out.println("SQL RUN ERROR: " + ex.getMessage());
        }
        return rs;
    }
}

設計重點解析

1. 符合 JavaBean 規範

  • 公開類別、實作 Serializable(此處省略但建議加上)
  • 提供無參數建構子
  • 私有欄位搭配 public getter/setter(sample 屬性)

2. 資源管理考量

注意事項:此範例為教學簡化版,實務應用需注意:

  • Connection、Statement、ResultSet 需在 finally 區塊正確關閉
  • 建議使用連線池(DataSource)替代 DriverManager
  • 避免在 Bean 中長期持有 Connection 物件
  • 例外處理應拋出或記錄,而非僅列印堆疊追蹤

3. 使用情境

在 JSP 頁面中使用:

<jsp:useBean id="dbBean" class="untitled1.Jsp2Bean" scope="request" />
<%
    ResultSet rs = dbBean.exeCuteQuery("SELECT * FROM employees");
    while (rs.next()) {
        out.println(rs.getString("name") + "<br>");
    }
%>

進階改進建議

  1. 導入連線池:透過 JNDI 查找 DataSource,提升效能與資源利用率
  2. 參數化查詢:使用 PreparedStatement 防止 SQL 注入
  3. 回傳領域物件:而非直接回傳 ResultSet,降低耦合度
  4. 實作 DataSource 屬性:讓 Bean 可在部署時配置不同資料來源

結語

Jsp2Bean 展示了 JavaBean 封裝資料庫邏輯的基本架構。雖然現代開發多採用 Spring Data、MyBatis 等 ORM 框架,但理解這層基礎封裝有助於掌握元件化設計精髓,也是維護舊系統時的必備知識。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved