7
Struts2請求處理流程
1.客戶端發送請求(客戶端初始化一個指向servlet容器(如tomcat)的請求)
2.請求經過一系列過濾器(如ActionContextCleanUp,SiteMesh等),ActionContextCleanUp-->FileterDispatcher
3、FilterDispatcher通過ActionMapper來決定這個Request需要調用哪個Action 如果不是調用action 則直接執行你的資源
4、如果ActionMapper決定調用某個Action,FilterDispatcher把請求的處理交給ActionProxy,
5、ActionProxy通過Configuration Manager詢問Struts配置文件(Struts.xml),找到需要調用的Action類。
6、ActionProxy創建一個ActionInvocation的實例
7、ActionInvocation通過一系列的攔截器調用真正的Action,當然這涉及到相關攔截器的調用
8、Action執行完畢,ActionInvocation創建Result并返回,返回結果前要做些動作也是可以的