Struts2流程
客戶端-->一系列過濾器-->ActionMapper-->核心過濾器-->ActionProxy-->ActionInvocation-->攔截器、返回Result-->Template、攔截器-->Response-->客戶端
1、客戶端(HttpServletRequest)發(fā)送請求
2、請求經(jīng)過過濾器(ActionContextCleanUp-->StrutsPrepareAndExecuteFilter(核心過濾器 )
3、請求到達(dá)ActionMapper,通過它來決定調(diào)用哪個Action
4、當(dāng)決定調(diào)用某個Action后,請求又會通過核心過濾器,核心過濾器把請求的處理交給ActionProxy
5、ActionProxy通過ConfigurationManager詢問配置文件(Struts.xml),找到要調(diào)用的Action類。
6、之后ActionProxy創(chuàng)建一個ActionInvocation的反向?qū)嵗?/p>
7、經(jīng)過攔截器(interceptor), 通過ActionInvocation的實(shí)例調(diào)用真正的Action
8、Action執(zhí)行完畢,ActionInvocation創(chuàng)建Result并返回
9、Result經(jīng)過JSP、攔截器之后,通過HttpServletResponse返回到客戶端