Struts學習筆記:Struts Framework工作原理

openkk 12年前發布 | 23K 次閱讀 Struts Web框架

首先說一下Framework的概念:人們用于解決相同或者相似類型問題的方案

特點:可重用行,可擴展性,可收縮性

基于請求響應模式的應用framework的邏輯結構:

1,控制層;

2,業務邏輯層;

3,數據邏輯層

 

Struts的概念和體系結構:

*    主要采用serlvet和Jsp技術實現的MVC模式

*    很好的一個控制層框架

 

關于struts其他的介紹就不多說了,先看一張流程圖

Struts學習筆記:Struts Framework工作原理

 

1,讀取配置(初始化ModuleConfig對象)

    Struts框架總控制器(ActionServlet)是一個Servlet,在web.xml中配置成自動啟動的Servlet,讀取配置文件 (Struts-config.xml)的配置信息,為不同的Struts模塊初始化相應的ModuleConfig對象:

        *    ActionConfig

        *    ControlConfig

        *    FormBeanConfig

        *    FowardConfig

        *    MessageResourcesConfig

 

2,發送請求

    用戶提交表單或調用URL向Web應用程序器提交一個請求,請求的數據用Http協議上傳給web服務器

 

3,填充Form(實例化,復位,填充數據,校驗,保存)

    (*.do)從ActionConfig中找出對應該請求的Action子類,如沒有對應的Action,控制器直接轉發給JSP或靜態頁面,如有對應的 Action且這個Action有一個相應的ActionForm,ActionForm被實例化并用HTTP請求的數據填充其屬性,并且保存在 ServletContext中(request或者session),這樣它們就可以被其它Action對象或者JSP調用

 

4,派發請求

    控制器根據配置信息ActionConfig將請求派發到具體的Action,相應的FormBean一并傳給這個Action的execute()方法

 

5,處理業務

    Action一般只包含一個execute()方法,它負責執行相應的業務邏輯(調用其他業務模塊),完畢后返回一個ActionForward對象,控制器通過該ActionForward對象來進行轉發工作

 

6,返回響應

    Action根據業務處理的不同結果返回一個目標響應對象給總控制器,該目標響應對象對應一個具體的JSP頁面或者另一個Action

 

7,查找響應(翻譯響應)

    總控制器根據業務功能Action返回的目標響應對象,找到對應的資源對象,通常是一個具體的JSP頁面

 

8,響應用戶

    目標響應對象將結果展現給用戶目標響應對象(jsp),將結果頁面展現給用戶。

 本文由用戶 openkk 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!