簡(jiǎn)述Struts工作流程
1.在web應(yīng)用啟動(dòng)時(shí),加載并初始化ActionServlet,ActionServlet從struts-config.xml文件中讀取配置信息,把它們存放到各個(gè)配置對(duì)象中。
2.當(dāng)ActionServlet接收到一個(gè)客戶請(qǐng)求時(shí),首先檢索和用戶請(qǐng)求相匹配的ActionMapping實(shí)例,如果不存在,就返回用戶請(qǐng)求路徑無(wú)效信息。
3.如ActionForm實(shí)例不存在,就創(chuàng)建一個(gè)ActionForm對(duì)象,把客戶提交的表單數(shù)據(jù)保存到ActionForm對(duì)象中。
4.根據(jù)配置信息決定是否需要表單驗(yàn)證。如果需要驗(yàn)證,就調(diào)用ActionForm的Validate()方法。如果ActionForm的Validate()方法返回null或返回一個(gè)不包含ActionMessage的ActionErrors對(duì)象,就表示表單驗(yàn)證成功。
5.ActionServlet根據(jù)ActionMapping實(shí)例包含的映射信息決定將請(qǐng)求轉(zhuǎn)發(fā)給哪個(gè)Action。如果相應(yīng)的Action實(shí)例不存在,就先創(chuàng)建這個(gè)實(shí)例,然后調(diào)用Action的execute()方法。
6.Action的execute()方法返回一個(gè)ActionForward對(duì)象,ActionServlet再把客戶請(qǐng)求轉(zhuǎn)發(fā)給ActionForward對(duì)象指向的JSP組件。
7.ActionForward對(duì)象指向的jsp組件生成動(dòng)態(tài)網(wǎng)頁(yè),返回給客戶。
【編輯推薦】