Struts2介绍:
Struts2是基于mvc设计模式的web层框架,struts2作为控制器(Controller)来建立模型与视图的数据交互,struts2以WebWork为核心,采用拦截器机制处理用户的请求。
Struts2工作原理:
基于下图来介绍:
当请求为:http://localhost:8080/Save.action,
(1)用户发送Save请求经过一系列过滤器(ActionContextCleanUp是一种可选过滤器),到达Struts2的核心过滤器;
(2)Struts2的核心过滤器:struts2的2.1版本之前是FilterDispatcher,2.1版本之后是StrutsPrepareAndExecuteFilter,核心过滤器询问ActionMapper是否调用Save这个Action
(3)ActionMapper决定调用名称为Save的Action,核心过滤器将收到调用信息,将请求交给ActionProxy;
(4)ActionProxy通过ConfigurationManager去查找struts.xml文件,找到名称为Save的Action;即:

(5)找到之后,ActionProxy创建一个ActionInvocation的实列;
(6)ActionInvocation首先调用一系列拦截器,然后再调用Action的方法,并获取到返回的结果,找到相应的jsp页面,再反向调用拦截器;
(7)最后响应jsp页面给用户。
参考文章:https://www.jianshu.com/p/3f2f11cb7562
本文介绍了Struts2框架,它是基于MVC设计模式的Web层框架,以WebWork为核心,采用拦截器机制处理请求。还详细阐述了其工作原理,包括用户请求经过过滤器到达核心过滤器,核心过滤器与ActionMapper交互,ActionProxy查找配置文件,ActionInvocation调用拦截器和Action方法,最终响应jsp页面。
223

被折叠的 条评论
为什么被折叠?



