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

Struts 從零開始(一):基礎登入驗證完整實作

     編輯:Java 相關知識

Struts 1 核心架構速覽

Struts 1 是基於 Servlet/JSP 的 MVC 框架,核心組件:

  • ActionServlet:唯一控制器,攔截所有 *.do 請求。
  • Action:業務邏輯入口,回傳 ActionForward 決定導向。
  • ActionForm:表單資料封裝與驗證載體。
  • struts-config.xml:總控制器,定義 FormBean、Action Mapping、Forward 路徑。

實作步驟

1. 建立 ActionForm 封裝表單資料

package formbeans;
import org.apache.struts.action.ActionForm;

public class LoginActionForm extends ActionForm {
  private String username;
  private String userpass;
  // getter/setter 略
}

屬性名需與 JSP name 完全一致,Struts 自動注入。

2. 撰寫 Action 處理業務邏輯

package actions;
import javax.servlet.http.*;
import org.apache.struts.action.*;

public class LoginAction extends Action {
  @Override
  public ActionForward execute(ActionMapping mapping, ActionForm form,
                               HttpServletRequest req, HttpServletResponse res) {
    LoginActionForm f = (LoginActionForm) form;
    String u = f.getUsername(), p = f.getUserpass();
    String forward = ("123".equals(u) && "123".equals(p)) ? "success" : "error";
    return mapping.findForward(forward);
  }
}

3. 設定 struts-config.xml

<struts-config>
  <form-beans>
    <form-bean name="loginActionForm" type="formbeans.LoginActionForm"/>
  </form-beans>
  <action-mappings>
    <action path="/login" name="loginActionForm" type="actions.LoginAction">
      <forward name="success" path="/success.jsp"/>
      <forward name="error" path="/wrong.jsp"/>
    </action>
  </action-mappings>
</struts-config>

關鍵對應:

  • action path="/login" 對應表單 action="login.do"
  • name="loginActionForm" 對應 <form-bean> 名稱
  • forward name 對應 Action 回傳字串

4. 撰寫 JSP 頁面

login.jsp

<form method="post" action="login.do">
  請輸入姓名:<input type="text" name="username" /><br/>
  請輸入密碼:<input type="password" name="userpass" /><br/>
  <input type="submit" value="Submit"/>
  <input type="reset" value="Reset"/>
</form>

success.jsp / wrong.jsp 依需求顯示成功或失敗訊息。

5. 部署與測試

啟動 Tomcat,訪問 https://localhost:8080/Struts1_Login/login.jsp
輸入頁 成功頁 失敗頁

核心觀念複習

  1. 請求 → ActionServlet → 依 path 找 Action → 自動建立/取得 FormBean → 填入表單資料 → 呼叫 execute()。
  2. Action 回傳 ActionForward,Struts 依 struts-config.xml 找 forward name 對應 path 並 forward(預設)或 redirect。
  3. ActionForm 屬性名 = JSP name = 表單欄位名,三者一致才能自動封裝。

掌握此流程,即可展開後續驗證、國際化、資料庫整合等進階主題。

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