Struts与Model2(一)
来源:互联网 发布:tensorflow 不完全开源 编辑:程序博客网 时间:2024/05/22 06:50
我们知道Model2是基于MVC设计模式的一个经典的实现,而Struts也说是MVC的经典实现,那么两者有什么区别呢?下面我来通过Struts的执行原理来剖析两者的区别:
一.概念
struts是一个基于MVC的Web开发框架。使用Struts的目的是为了帮助我们减少在运用MVC设计模型来开发Web应用的时间。
二.执行流程
我们先看一个登录小例子,基于Model2我们需要做的事情:
对比一下我们使用Struts需要做的事情:
从表面上看好像就是把Model2中的Servlet换成了Struts中的Action,真实的情况是Struts把Servlet等一些框架实现进行了封装,我们来看一下Struts的真实的执行流程:
从图中可以看到Struts将ActionServlet进行了封装,它是一个中央控制器,下面我们对Struts中的几个重要类进行一下简要讲解。
三.Struts中的类
1.ActionServlet
ActionServlet是Struts的一个中央控制器,是核心类,它负责截取url,取得ActionMapping(Action的配置信息),动态创建ActionForm,调用Action方法,最后通过ActionForward转向到一个新的页面。
ActionServlet同样只是一个标准的Servlet,它也需要在web.xml中进行配置。由于我们的struts的实现需要从ActionServlet开始,所以在web.xml中设置其为自动启动(配置<load-on-startup>)。
2.ActionForm
ActionForm用于封装表单数据(因此ActionForm中的参数应与表单域的名字相同),并可自动转换数据类型(不用我们再手动强制转换数据类型了)。
3.ActionMapping
ActionMapping用来存储Action的配置信息,可通过ActionMapping来查找对应的Action。
4.Action
Action是一个业务逻辑层的控制器,它从ActionForm中取得表单数据,然后调用Model层的实现,最后返回转向信息类ActionForward。
5.ActionForward
ActionForward封装了页面转向信息,Action执行完后可调用它转向相应的页面。
- Struts与Model2(一)
- Struts与Model2(二)
- Model1与Model2
- Model1 与Model2
- Model1与Model2
- Model1与Model2
- Model1与Model2区别
- 架构学习(一):浅析Java中的Model1和Model2
- MODEL2
- Model2
- Model2
- Struts原理与实践(一)
- Struts原理与实践(一)
- Struts 原理与应用(一)
- JSTL与Struts的结合(一)
- Struts 原理与应用(一)
- Struts 原理与应用(一)
- Struts 原理与应用(一)
- centos 更改系统时间 为上海/中国时间
- 在Android中访问WebService接口
- h264 sps pps
- android PowerManager.WakeLock 对电源进行管理
- 解决hotmail邮箱打不开,最简单的方法。。。
- Struts与Model2(一)
- h264 图像宽度与高度的获取
- 使用list保存数据内存指针,在LIST大小大于5000后,push_back效率很低
- 数据复制软件---Oracle GoldenGate
- struts 1.x转换器
- Android调用天气预报的WebService简单例子
- 网管术语简写对照表
- ARM Linux 的启动过程
- Linux服务器需要登录之后才能连接无线问题?