zoukankan      html  css  js  c++  java
  • Struts控制流

    Struts框架是基于控制层的一个MVC框架,所以对于Struts框架来说,最核心的东西就是控制。这次毕业论文答辩的时候,老师问了“什么叫控制”。当时听起来有点雷人。但是事后一想,确实是这样,Struts就是控制。我毕业论文是采用Struts框架实现的。当然里面少不了关于控制的理论。我当时回答他的是关于web应用上,控制代表的操作。比如对页面传递过来的信息进行校验,分发等。但是老师对我的答案不是认同,他说我这个是纯工程上的说法,我们要求从理论上说,他从控制论的角度去解释了一下控制。他说的虽然有点空,但是也不是不对,可能这也是我们这些工程人员所欠缺的吧。

     

    既然Struts最核心的就是控制,那么下面就解释一下Struts的控制流。首先看一张时序图。




    说明:

    • 客户端请求匹配Action URI 样式的路径
    • 讲客户端请求传递给ActionServlet,服务器容器执行。
    • 如果这个是模块化的,将选择相应的模块。
    • ActionServlet查询路径的映射,在struts-config.xml文件中。
    • 如果映射标明了一个form bean ,ActionServlet判断它是否存在。
    • 如果mappingvalidate字段为true,则调用validate方法。
    • 如果失败,ActionServlet转发给input对应的页面。
    • 如果mapping标明一个Action,如果它已经存在或实例化,则他被重用。
    • 执行Actionexecute方法。调用用户自定义bean
    • Action 返回一个ActionForwardActionServlet
    • ActionForward指定一个URI,返回用户视图。

     

    其实Struts控制是一个比较简单的过程,他主要是控制数据有效性,还有控制数据传递路径有效。还定义了一些如果出错会采取那些办法。这里面用到了很多很好的面向对象的思想。值得去借鉴。在接下来会研究一下。

  • 相关阅读:
    git/gerrit上已经删除了远程分支,本地仍然能看到的解决方法
    bat中查找文件夹下有几个某类型的文件
    ERROR 1045 (28000)问题解决
    Unsupervised Pretraining Transfers well Across Languages
    由声学特征重建语音波形-声码器的最近进展
    神经机器翻译中有用的技巧
    多语种神经机器翻译
    利用Fairseq训练新的机器翻译模型
    转:Linux 系统忘记密码 -> 修改 Ubuntu 虚拟机密码
    Linux安装与配置Tomcat
  • 原文地址:https://www.cnblogs.com/shipeng22022/p/4614162.html
Copyright © 2011-2022 走看看