Struts功能详解——Struts控制流

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

 

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




 

说明:

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

 

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

 

转自:https://i-blog.csdnimg.cn/blog_migrate/6b9898601ad80718f72bd2cfa70277e7.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值