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