Struts(一)struts2.2概述与MVC模式深度剖析
struts2.2概述与MVC模式深度剖析
1.Struts2是由webwork与struts一起组成的。struts1与struts2完全不一样。(处理前段到服务器端的交互,也就是web端)
2.通过基于请求响应( Request-Response)模式的应用Framework, 基本上有如下几个表现逻辑结构组成。
– 控制器(Controller) ——控制整个Framework中各个组件的协调工作。
– 业务逻辑层(Business Logic) ——对Framework本身来说, 这里仅仅只是概念和几个提够服务的基础组件,
真正的实现与客户的业务逻辑接轨, 还需要开发人员在Framework上再次扩展。
– 数据逻辑层(Data Logic) ——绝大多数应用系统都需要涉及到数据交互,这一层次主要包括了数据逻辑
3.Struts有其自己的控制器( Controller), 同时整合了其他的一些技术去实现模型层( Model) 和视图层( View) 。 在模型层, Struts可以很容易的与数据访问技术相结合, 包括EJB,JDBC等。 在视图层,Struts能够与JSP表示层组件相结合。
4.Struts的概念和体系结构
Struts有一组相互协作的类、 Servlet以及Jsp TagLib组成。基于Struts构架的web应用程序基本上符合JSPModel2的设计标准,可以说是MVC设计模式的一种变化类型。根据上面对framework的描述,我们很容易理解为什么说Struts是一个web framework,而不仅仅是一些标记库的组合。
5.MVC是Model-View-Controller的简称, 即模型-视图-控制器。
MVC是一种设计模式, 它把应用程序分成三个核心模块:模型、 视图、 控制器, 它们各自处理自己的任务。
MVC结构图
MVC的处理过程
• 首先控制器接收用户的请求,并决定应该调用哪个模型来进行处理。
• 然后模型根据用户请求进行相应的业务逻辑处理,并返回数据。
• 最后控制器调用相应的视图格式化模型返回的数据,并通过视图呈现给用户。
MVC的优点
• 首先,最重要的一点是多个视图能共享一个模型。同一个模型可以被不同的视图重用,大大提高了代码的可重用性。
• 由于MVC的三个模块相互独立,改变其中一个不会影响其他两个,所以依据这种设计思想能构造良好的松耦合的构件。
• 此外,控制器提高了应用程序的灵活性和可配置性。控制器可以用来联接不同的模型和视图去完成用户的需求,这样控制器可以为构造应用程序提供强有力的手段。
MVC的适用范围
• 使用MVC需要精心的计划,由于它的内部原理比较复杂,所以你需要花费一些时间去理解它。将MVC运用到你的应用程序,会带来额外的工作量,增加应用的复杂性。
• 但对于开发存在大量用户界面,并且业务逻辑复杂的大型应用程序, MVC将会使你的软件在健壮性、代码重用和结构方面上一个新的台阶。尽管在最初构建MVC框架时会花费一定的工作量,但从长远角度看,它会大大提高后期软件开发的效率。
JSP的模型2
• JSP负责生成动态网页
• Servlet负责流程控制
• JavaBean负责业务逻辑
转载于:https://www.cnblogs.com/liu-Gray/p/4921604.html
Struts(一)struts2.2概述与MVC模式深度剖析相关推荐
- 【JavaScript设计模式张容铭】抽象工厂模式深度剖析——关于继承与constructor属性的深度理解
写在前面 最近阅读了张容铭的<JavaScript设计模式>一书,阅读到抽象工厂模式一节时对书上的代码产生了疑问,但同时在解决疑问的过程中,对继承又产生了新的理解. 我仔细查阅了很多文章, ...
- 物流园区运营模式深度剖析
当前,国内各大中小城市建设物流园区如火如荼,但物流园建设好以后,该怎么运营?政府和企业在其中又扮演什么样的角色?老傅师从国内物流学界大咖张锦教授,或多或少受些影响,后来又是国内第一批物流师执照者,虽说 ...
- java struts2 mvc_struts2的MVC模式
MVC是一种架构型模式,它本身并不引入新的功能,只是用来指导我们改善应用程序的架构,使得应用的模型和视图相分离,从而得到更好的开发和维护效率. 在MVC模式中,应用程序被划分成了模型(Model).视 ...
- 基于MVC模式Struts框架研究
不做web开发多年了, 可偶尔去面试的时候, 还是会问道Struts实现mvc的细节. 很多东西都模糊了. 在网上找了下, 觉得这篇不错, 记下来防止以后用的着. ' 分布式企业应用软件结构复杂.涉及 ...
- struts2学习笔记(一) MVC模式
在学习struts2之前首先了解一下MVC模式. MVC是一个设计模式,它强制性的使应用程序的输入.处理和输出分开.使用MVC应用程序被分成三个核心部件:模型.视图.控制器.它们各自处理自己的任务.分 ...
- MVC模式 与 如何实现struts MVC模式
-------- MVC (Model -- View -- Controller) ---------------- Model:模型表示业务逻辑和业务规则等,在MVC的三个部件中拥有最多的处理任务 ...
- MVC模式与如何实现struts MVC模式
-------- MVC (Model -- View -- Controller) ---------------- Model:模型表示业务逻辑和业务规则等,在MVC的三个部件中拥有最多的 ...
- [导入]ASP.NET MVC框架开发系列课程(1):MVC模式与ASP.NET MVC框架概述.zip(8.80 MB)
讲座内容: ASP.NET MVC框架是既ASP.NET WebForms后的又一种开发方式.它提供了一系列优秀特性,使ASP.NET开发人员拥有了另一个选择.本次课程将对MVC模式ASP.NET M ...
- MVC模式 在Java Web应用程序中的实现
一.MVC简介 MVC全名是Model View Controller,是模型(model)-视图(view)-控制器(controller)的缩写,一种软件设计典范,用一种业务逻辑.数据.界面显示分 ...
- 了解MVC模式与MVC框架
MVC MVC的概念 模型(Model) 控制器(Controller) 视图(View) MVC工作流程 Java MVC框架 Struts1框架 Struts2框架 Spring MVC框架 JS ...
最新文章
- 加密货币支付卡公司与BCH达成合作
- 网络设备Web登录检测工具device-phamer
- js 对表格的动态操作(动态添加行,删除该行,在指定位置添加控件)
- 动态壁纸安卓_安卓 高清 动态 壁纸
- 去掉窗口_Flink 基础——窗口(Window)理论篇
- gateway网关_SpringCloud技术指南系列(十二)API网关之Gateway使用
- android搭建客户端,用Android搭建客户端 手机和服务器交互开发实例
- gogs可以自动化部署吗_效率提升利器:你还害怕自动化部署吗?
- 【CNN】 吴恩达课程中几种网络的比较
- 华悦网游器软件介绍及功能介绍
- OSDev——GCC交叉编译器
- syslog工具_INAV:一款专用的日志审查导航工具
- MYSQL 命令行大全
- 使用Java实现多个文件压缩打包
- html 文字自动转大写
- FREEIPA:ipa-server的部署使用
- 科技界、IT届的外号
- blender测量3d模型的尺寸
- View是什么,什么是View?
- 百练4083我爱北大 解析