Struts2是基于mvc模式的轻量级web框架,是以webWork为核心的,使用拦截器机制来处理用户的请求,使业务逻辑控制器与ServletAPI完全脱离开。
Struts2执行流程图:
用户发出请求,程序调用核心控制类StrutsPrepareAndExecuteFilter,询问ActionMapper是否有符合的action类。决定调用某个action之后,核心类吧请求处理交给Actionproxy,ActionProxy通过ConfigurationManager读取到Struts.xml,找到action信息。Actionproxy创建一个ActionInvocation的对象,actionInvocation来调用action,之前会依次调用拦截器,执行完action之后,返回result字符串给actionInvacation,拦截器倒序执行。最后产生HttpservletResponse 响应客户端,返回给客户端。
对于Struts2的学习,之前有关项目的实践写过一些博客:
导图总结: