小菜毛毛技術分享

          與大家共同成長

            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  回復  更多評論
            

          主站蜘蛛池模板: 根河市| 黑水县| 江阴市| 偏关县| 永平县| 石楼县| 新津县| 沁水县| 琼结县| 武邑县| 鹰潭市| 泰兴市| 句容市| 鄂伦春自治旗| 湘西| 乌海市| 临城县| 门源| 永和县| 邢台县| 赤水市| 武穴市| 建水县| 洛隆县| 丰都县| 明光市| 巨鹿县| 定安县| 舒兰市| 青河县| 太康县| 建瓯市| 广河县| 广昌县| 潞西市| 铜川市| 琼中| 东城区| 江阴市| 滁州市| 舟山市|