Model 1和Model 2
对于Java阵营的动态Web编程技术而言,则经历了所谓的Model 1和Model 2时代。
图1.3 动态Web编程技术的发展历史
所谓Model 1就是JSP大行其道的时代,在Model 1模式下,整个Web应用几乎全部由JSP页面组成,JSP页面接收处理客户端请求,对请求处理后直接做出响应。用少量的JavaBean来处理数据库连接、数据库访问等操作。
Model 1模式的实现比较简单,适用于快速开发小规模项目。但从工程化的角度看,它的局限性非常明显:JSP页面身兼View和Controller两种角色,将控制逻辑和表现逻辑混杂在一起,从而导致代码的重用性非常低,增加了应用的扩展性和维护的难度。
早期有大量ASP和JSP技术开发出来的Web应用,这些Web应用都采用了Model 1架构。
Model 2已经是基于MVC架构的设计模式。在Model 2架构中,Servlet作为前端控制器,负责接收客户端发送的请求,在Servlet中只包含控制逻辑和简单的前端处理;然后,调用后端JavaBean来完成实际的逻辑处理;最后,转发到相应的JSP页面处理显示逻辑。其具体的实现方式如图1.5所示。
图1.4显示了Model 1的程序流程。
图1.5显示了Model 2的程序流程。
正如图1.5中看到的,Model 2下JSP不再承担控制器的责任,它仅仅是表现层角色,仅仅用于将结果呈现给用户,JSP页面的请求与Servlet(控制器)交互,而Servlet负责与后台的JavaBean通信。在Model 2模式下,模型(Model)由JavaBean 充当,视图(View)由JSP页面充当,而控制器(Controller)则由Servlet充当。
由于引入了MVC模式,使Model 2具有组件化的特点,更适用于大规模应用的开发,但也增加了应用开发的复杂程度。原本需要一个简单的JSP页面就能实现的应用,在Model 2中被分解成多个协同工作的部分,需花更多时间才能真正掌握其设计和实现过程。
Model 2已经是MVC设计思想下的架构,下面简要介绍MVC设计思想的优势。
注意: 对于非常小型的Web站点,如果后期的更新、维护工作不是特别大,可以使用Model 1的模式来开发应用,而不是使用Model 2的模式。虽然Model 2提供了更好的可扩展性及可维护性,但增加了前期开发成本。从某种程度上讲,Model 2为了降低系统后期维护的复杂度,却导致前期开发的更高复杂度。
转载自:http://book.51cto.com/art/200708/53966.htm
分享到:
相关推荐
ML文件解析 系统在工作时,需要配置文件信息(XML),但是,一般情况下,系统会在初始化的时候,一次将配置文件中的信息加载到内存中,用系统定义的配置对象来封装。所谓配置对象就是专门的用于封装配置信息的对象,...
是关于model和modle2的开发模式,在b/s开发模式中的一些理解和见解,关于学习的技术文档,可以帮助理解
DDR2 model and testbench, Micron DDR2 die; File Descriptions: ------------------ ddr2.v -ddr2 model ddr2_mcp.v -structural wrapper for ddr2 - multi-chip package model ddr2_module.v -structural ...
通过控制台得知长度一直为1。原来是拿不到数据。 v-model通常用于input的双向数据绑定,它并不会向子组件传递数据。 :model是v-bind:model的缩写,是绑定自定义属性.它只是将父组件的数据传递给子组件,并没有实现父...
P4 v1model.p4文件的翻译
MVC Model2 模型 调用过程 MVC Model2 模型 调用过程 MVC Model2 模型 调用过程
seetaface2 model文件
Maverick是一个轻量而完备的MVC Model 2框架。Maverick的Action称作Controller。Controller只接受一个ControllerContext参数。request,response, servlet config, servelt context等输入信息都包装在...
Spring-MVC-model(1) Spring-MVC-model(1) Spring-MVC-model(1)
AR2 6轴3D打印DIY机械臂 Model AR2 Electrical 电路教程AR2 6轴3D打印DIY机械臂 Model AR2 Electrical 电路教程AR2 6轴3D打印DIY机械臂 Model AR2 Electrical 电路教程AR2 6轴3D打印DIY机械臂 Model AR2 Electrical ...
WORKING MODEL下载种子。构建一个想象中产品的结构的最好仿真工具,测定其合理性,推荐产品的相关参数,开发系统产品的首选。 有空玩玩,确实不错,就算当成玩具也很有乐趣。
C1_W1_Lab03_Model_Representation_Soln.ipynb
JSP model2即:Jsp+Servlet+JavaBean,JSP model2实际上就是MVC,MVC包括模型,视图,控制器三部分,这个例子基于mvc思想实现了用户注册功能。
Prince2 Process Model
通过因子图和概率论的结合,使用Bayesian Graphical Model来描述和解决生活中的各种互相干扰互相影响的问题。
wiki.model wiki.model.trainables.syn1neg.npy wiki.model.wv.vecto 训练好的模型,需要自行下载 热评词,词性标注
文档里面包含了Android各机型的Model和市场名字的对应关系
model2 的缺点:---- 针对... 针对Model1 ,它把实现后台处理的Java代码,写在了一个Servlet中,这样写的好 处是--显示层 -jsp 控制层 - Servlet 数据模型 - JavaBean 分开了。
Ising model (1-dimension) fortran code Ising modelIsing model
Tuning and synthesis of 1DF and 2DF IMC for process uncertainty Estimation and inferential control using multiple secondary measurements Basic and advanced techniques of model identification and ...