Struts2 架构


由高层次,Struts2是一个上拉型MVC(MVC2)框架。在Struts2的模型 - 视图 - 控制器模式,实现以下五个核心部件:

  • Actions
  • Interceptors
  • Value Stack / OGNL
  • Results / Result types
  • View technologies

Struts2 从传统的MVC框架操作需要的模型,而不是在控制器角色略有不同,虽然有一些重叠。

struts2架构

上面的图描绘Struts2的高层体系结构模型,视图和控制器。控制器实现一个Struts2的调度Servlet过滤器,以及拦截,模型是实施行动和结果类型和结果的组合视图。值栈和OGNL提供的共同点,其他组件之间的连接和集成。

除了从上面的成分,会有很多的信息,涉及到配置。配置Web应用程序,以及配置的动作,拦截器,结果等。

这是MVC模式 Struts2的体系结构概述。我们将在后续章节中更详细通过每个组件的介绍。

请求的生命周期:

根据上述双字母组合,可以在Struts 2解释用户的请求生命周期,如下所示:

用户发送请求到服务器的某些资源的请求(即页面)。

FilterDispatcher 查看请求,然后确定适当的动作。

配置的拦截功能,适用于如验证,文件上传等。

所选的动作会执行,以执行所请求的操作。

同样,配置的拦截器做任何后期处理,如果需要的话。

最后其结果由视图准备,并且将结果返回给用户。