什么是Struts2 ?
- Struts2是Apache發(fā)行的MVC開源框架。注意:它只是表現(xiàn)層web(MVC)框架。
- struts2的使用:我們需要先通過過濾器,調(diào)用URL判斷使用哪個Action,再由Action決定返回結(jié)果,繼而 提交請求。那么這就構(gòu)成了一個MVC架構(gòu),由過濾器(Controller)控制選擇動作Action(Model),獲得結(jié)果Result(View),向控制器提交請求。
- 作用:傳遞參數(shù),將請求發(fā)送給對應的控制器,在控制器中調(diào)用相應業(yè)務接口,最后將業(yè)務接口返回的結(jié)果返回給指定的視圖。
詳細執(zhí)行流程
- 服務器啟動:訪問web.xml(Tomcat等)
- 實例化并初始化過濾器
- 加載struts.xml文件
- 客戶端發(fā)送請求(例:hello.action)
- 請求到達過濾器
- 截取請求的動作名稱,從struts.xml中查找
- 找到動作后實例化動作類
- 調(diào)用對應的動作方法,方法有返回值
- 根據(jù)返回值,找到name取值對應的結(jié)果視圖
- 找到對應的頁面
- 響應瀏覽器,展示結(jié)果

Struts2流程圖.png
配置文件讀取順序
- default.properties ——> struts-default.xml ——> strtuts-plugin.xml ——> struts.xml ——> struts.properties ——> web.xml