zoukankan      html  css  js  c++  java
  • Struts2框架简单介绍

    如需,了解Struts2详情,请点击,传送门

    工作原理

    在Struts2 框架中的处理大概分为以下步骤:

      1.客户端初始化一个指向servlet容器(例如Tomcat)的请求。

      2.这个请求经过一系列的过滤器(Filter)(这些过滤器中有一个叫做ActionContextCleanUp的可选过滤器,这个过滤器对于Struts2和其他框架的继承很有帮助,例如:SiteMesh Plugin)。

      3.接着FilterDispatcher被调用,FilterDispatcher询问ActionMapper来决定这个请求是否需要调用某个Action。

      4.如果ActionMapper决定需要调用某个Action,FilterDispatcher把请求的处理交给ActionProxy。

      5.ActionProxy通过Configuration Manager询问框架的配置文件,找到需要调用的Action类。

      6.ActionProxy创建一个ActionInvocation的实例。

      7.ActionInvocation实例使用命名模式来调用,在调用Action的过程前后,涉及到相关拦截器(intercepter)的调用。

      8.一旦Action执行完毕,ActionInvocation负责根据struts.xml中的配置找到对应的返回结果。返回的结果通常是(但不总是,也可能是另外一个Action链)一个需要被表示的jsp或者freemaker的模板。在表示的过程中可以使用Struts2框架中继承的标签。在这个过程中需要涉及到ActionMapper。

    工作流程

      1.客户端在浏览器输入url地址。

      2.这个url请求通过http协议发送给tomcat。

      3.tomcat根据url找到对应项目里面的web.xml。

      4.在web.xml里会发现struts2的配置

      5.然后会找到struts2对应的struts.xml配置文件。

      6.根据url解析struts.xml配置文件就会找到对应的class。

      7.调用完class返回一个字String,根据struts.xml返回到对应的jsp。

      

  • 相关阅读:
    【每日英语】
    【百宝箱】CLion: Cound not load cache
    C# WPF:这次把文件拖出去!
    C# WPF:快把文件从桌面拖进我的窗体来!
    两个List< string>比较是否相同的N种方法,你用过哪种?
    分享套接字数据包序列化与反序列化方法
    如何从含有占位符的字符串生成一个ReactNode数组
    vscode 插件配置指北
    第十一周总结
    机场&代理商-关系图
  • 原文地址:https://www.cnblogs.com/tizer/p/11391015.html
Copyright © 2011-2022 走看看