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

使用 JDeveloper 建構 Struts 應用程式完整指南

     編輯:Java 相關知識

前言

內建的 Struts 支援大幅提升了 Oracle JDeveloper 整合開發環境的開發產能。Jakarta Struts 是 Apache Software Foundation 支援的開源專案,提供一個使用標準 J2EE 組件(如 JSP、Servlet 和 JavaBean)建構 Model 2 架構——也就是 MVC(Model-View-Controller)設計模式變體——的應用程式框架。

Struts 解決企業級開發痛點

Struts 專為解決企業應用程式開發專案中常見的問題而設計,針對頁面流程控制、國際化、可維護性與部署彈性等議題提供完整解決方案。

Oracle9i JDeveloper 9.0.3 的 Struts 開發支援

此版本透過以下特性提供全方位的 Struts 開發支援:

  • Struts 執行階段函式庫:特別支援 Struts 1.1,內建執行階段函式庫與範例應用程式
  • Struts 程式碼產生精靈:透過 ActionForm 與 Action 類別的程式碼產生精靈強化開發效率;Struts 初始應用程式精靈可自動建立必要的 Java 函式庫與設定檔(struts-config.xml、ApplicationResources.properties)
  • Struts 設定編輯器:提供直觀的使用者介面簡化 struts-config.xml 主設定檔的編輯作業

Struts 與 BC4J 整合開發

除了一般 Struts 應用程式支援外,JDeveloper 還提供針對 Business Components for Java (BC4J) 的額外功能:

  • Struts BC4J JSP 初始應用程式精靈:產生簡單的入門應用程式
  • 完整的 Struts BC4J JSP 應用程式精靈:產生完整的基於 Struts 的 BC4J JSP 應用程式

實作簡單的 Struts 登入應用程式

理解 JDeveloper Struts 功能的最佳方式是親手建構一個簡單應用程式。本文示範一個簡單的登入表單應用程式。

開發環境準備

可從 OTN 下載 Oracle9i JDeveloper 評估版,完整專案檔案請下載 SimpleStrutsApp.zip。

建立 JSP 視圖層頁面

MVC 架構的視圖層包含三個 JSP 頁面:

  • 登入頁面 (login.jsp)
  • 登入成功頁面 (success.jsp)
  • 登入失敗頁面 (failure.jsp)

首先使用 JSP 頁面精靈建立 login.jsp,再進行客製化。登入表單使用 Struts 標籤庫的 HTML 標籤產生,success.jsp 與 failure.jsp 僅包含提示訊息。同時需定義 LoginForm (ActionForm Bean) 代表表單元素,以及 LoginAction 處理登入請求。

建立登入表單

  1. 啟動 JDeveloper,開啟 SimpleStrutsApp.jws 專案
  2. 選擇 File → New,在 Web Tier → JavaServer Pages 中選擇 JSP Page
  3. 檔案命名為 login.jsp
  4. 從 Component Palette 選擇 Struts HTML,將 <html:form> 標籤加入頁面,Action 屬性設為 /login
  5. 使用 Struts <html:text> 標籤建立 userid 與 password 輸入欄位,property 分別設為 "userid" 與 "password"
  6. 在各欄位前加入「Userid:」與「Password:」提示文字(亦可使用 <bean:message> 實現國際化動態提示)

建立 LoginForm Bean

完成 login.jsp 後,建立 Struts ActionForm Bean 提供 HTML 表單欄位的 Java 表現形式,並實作第一層驗證邏輯(如必填欄位檢查、郵件格式驗證等)。

  1. File → New,選擇 Web Tier → Struts → ActionForm
  2. 類別名稱與 Form Bean 名稱均設為 LoginForm
  3. 使用 Class Editor 為 Bean 新增 userid、password 欄位及對應的 getter/setter 方法
  4. 覆寫 validate() 方法實作欄位非空驗證,錯誤訊息鍵值(如 error.userid.required)對應 ApplicationResources.properties 中的訊息定義

Struts 設定編輯器介面

圖 1:Struts 設定編輯器

建立 LoginAction 類別

Struts Action 類別處理來自 HTML 表單的實際請求邏輯。

  1. File → New,選擇 Web Tier → Struts → Action
  2. 類別名稱設為 LoginAction,路徑設為 /login(對應表單的 action 屬性)
  3. 編輯 execute() 方法,根據表單提交欄位判斷登入成敗

為簡化示範,使用簡單的 LoginCheck 類別驗證帳密(實際專案應對接資料庫或安全機制):

package mypackage1;
public class LoginCheck {
    boolean checkUseridPassword(String id, String pwd) {
        if (id.equals("scott") && pwd.equals("tiger"))
            return true;
        else
            return false;
    }
}

組裝應用程式元件

Struts 最大優勢在於易於組裝——單一設定檔 struts-config.xml 串聯所有 J2EE Web 應用程式元素。

  1. 開啟 Struts 設定編輯器(圖 1),編輯 struts-config.xml,使用 Action 映射將 LoginAction 連結到 LoginForm Bean
  2. 建立全域轉向映射:成功登入導向 success.jsp,失敗導向 failure.jsp
  3. 在 JDeveloper 中本地執行 Login.jsp 測試,內建 OC4J 伺服器啟動後可見登入頁面
  4. 測試案例:提交空白表單驗證表單驗證、輸入錯誤帳密驗證登入失敗、輸入 scott/tiger 驗證登入成功

結語

本文示範的應用程式雖簡單,但涵蓋 Struts 核心開發技術,且易於擴展至實務專案。Oracle9i JDeveloper 提供的整合工具大幅降低 Struts 開發門檻,提升開發效率與程式碼品質。

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