小菜毛毛技術分享

          與大家共同成長

            BlogJava :: 首頁 :: 聯系 :: 聚合  :: 管理
            164 Posts :: 141 Stories :: 94 Comments :: 0 Trackbacks

          Struts工作流程

          文章分類:招聘求職
          一個用戶的請求是通ActionServlet來處理和轉發的。那么,ActionServlet如何決定把用戶請求轉發給哪個Action對象呢?這就需要一些描述用戶請求路徑和Action衍射關系的配置信息了。在Struts中,這些配置映射信息都存儲在特定的XML文件Struts- config.xml中。在該配置文件中,每一個Action的映射信息都通過一個<Action>元素來配置。

          這些配置信息在系統啟動的時候被讀入內存,供Struts在運行期間使用。在內存中,每一個<action>元素都對應一個org.apache.struts.action.ActionMapping類的實例。

          對于采用Struts框架的web應用,在web應用啟動時就會加載并初始化ActionServlet,ActionServlet從struts- config.xml文件中讀取配置信息,把它們存放到各個配置對象中,例如Action的映射信息存放在ActionMapping對象中。

          當ActionServlet接收到一個客戶請求時,將執行如下流程:

          1.檢索和用戶請求相匹配的ActionMapping實例,如果不存在,就返回用戶請求路徑無效信息。

          2.如ActionForm實例不存在,就創建一個ActionForm對象,把客戶提交的表單數據保存到ActionForm對象中。

          3.根據配置信息決定是否需要表單驗證。如果需要驗證,就調用ActionForm的Validate()方法。

          4.如果ActionForm的Validate()方法返回null或返回一個不包含ActionMessage的ActionErrors對象,就表示表單驗證成功。

          5.ActionServlet根據ActionMapping實例包含的映射信息決定將請求轉發給哪個Action。如果相應的Action實例不存在,就先創建這個實例,然后調用Action的execute()方法。

          6.Action的execute()方法返回一個ActionForward對象,ActionServlet再把客戶請求轉發給ActionForward對象指向的JSP組件。

          7.ActionForward對象指向的JSP組件生成動態網頁,返回給客戶。

          posted on 2010-03-04 15:34 小菜毛毛 閱讀(1870) 評論(1)  編輯  收藏 所屬分類: 面試

          Feedback

          # re: Struts工作流程 2015-02-10 10:48 esfdsf
          dsf  回復  更多評論
            

          主站蜘蛛池模板: 宝应县| 雅安市| 德惠市| 台东县| 邯郸县| 康乐县| 永安市| 安宁市| 兰州市| 南投市| 苏州市| 平顶山市| 民勤县| 大方县| 广汉市| 保靖县| 南康市| 高淳县| 恭城| 筠连县| 年辖:市辖区| 赤城县| 拉孜县| 东明县| 田林县| 明水县| 桑日县| 西乌珠穆沁旗| 利津县| 和平区| 济宁市| 富蕴县| 资源县| 沽源县| 锦州市| 信丰县| 平远县| 云安县| 吴堡县| 边坝县| 彭阳县|