Struts2 的工作原理: 1,把Action要求发送给 StrutsPrepareAndExecuteFilter StrutsPrepareAndExecuteFilter.doFilter() --> ExecuteOperations.executeAction() --> Dispatcher.serviceAction() --> 2,StrutsPrepareAndExecuteFilter把要求的处置交给 ActionProxy ActionProxy.execute() --> 3,ActionProxy 创立一个 ActionInvocation 的实例,并进行初始化,ActionInvocation 实例在调用 Action 的进程前后,触及到相干拦阻器的调用和对Result的调用 ActionInvocation.invoke() --> Interceptor.intercept()、 ActionInvocation.invokeAction()、ActionInvocation.executeResult() --> 4,在 Action 履行终了后(ActionInvocation.invokeAction()),ActionInvocation 依据 struts.xml 中的配置找到对应的返回成果(ActionInvocation.executeResult()),并把成果(jsp页面)发送到客户端 下图为 struts2 处置要求的详细流程: Struts2 的工作原理: 1,把Action要求发送给 StrutsPrepareAndEx