zoukankan      html  css  js  c++  java
  • Struts2笔记03——架构(转)

    原始内容:https://www.tutorialspoint.com/struts_2/basic_mvc_architecture.htm

    架构(很重要!尤其是图!)

    从一个比较高的层次来看,Struts2是一个pull-MVC(或者MVC2)框架。

    Struts2的 Model-View-Controller 模式通过以下五个核心组件实现:

    • Actions

    • Interceptors

    • Value Stack / OGNL

    • Results / Result types

    • View technologies

    Struts2和传统的MVC框架略有不同,尽管有一些重叠,在Struts2中,Action扮演的是模型的角色,而非控制器。

    Struts 2 Architecture

    【注释】可以看到,setXxx()和getXxx()是一对的!

    上图描绘了Struts2的高层次架构。控制器是通过Struts2 分派servlet过滤器以及拦截器进行实现,模型是通过Actions进行实现,而视图则是结果类型结果的结合。值栈和OGNL提供公共的thread、linking以及与其他组件之间的集成。

    除了上述的组件之外,还有许多配置相关的信息。例如web应用的配置,Actions的配置,拦截器的配置,results的配置等。

    这仅仅只是Struts2 MVC模式的体系结构的一个概述,在之后的章节中,我们将详细了解各个组件。

    请求的生命周期(重要!!!)

    基于上图,我们可以很容易地描述Struts2中请求的生命周期:

    • 用户发送一个请求给服务,期望获得某些资源(比如,页面)
    • 过滤分派器(FilterDispatcher)查看这个请求,然后确定适当的Action.
    • 通过验证、文件上传等方式来配置“拦截器(interceptors)”功能。
    • 被选中的Action执行响应请求的操作
    • 另外,如果需要的话,已配置的“拦截器”可以被用来做任何“后期处理”
    • 最后,由视图显示结果并返回给用户。
  • 相关阅读:
    第09组 Beta冲刺(2/5)
    第09组 Beta冲刺(3/5)
    第09组 Beta冲刺(4/5)
    第09组 Beta冲刺(5/5)
    第09组 Beta冲刺(1/5)
    SDN课程阅读作业(2)
    C语言I作业07
    C语言I博客作业05
    C语言I博客作业04
    C语言I博客作业03
  • 原文地址:https://www.cnblogs.com/xkxf/p/6985223.html
Copyright © 2011-2022 走看看