model2与model1对比

16 篇文章 0 订阅
Servlet程序中夹杂HTML的画面输出绝对不是什么好主意,原先是java中写HTML,后来jsp出现了,变成了HTML中写Java.jsp网页中夹杂java程序代码,也是极度不建议的做法.java程序代码与呈现画面的HTML等搅和在一起,一来编写不易,二来日后维护不易,三来对大型团队间的分工合作也是一个大的困扰.
而应用程序架构上的设计正好用来解决这一堆麻烦,使分工更加明确,便于维护.
谈到web应用程序架构,应该先来谈mvc和model2.
mvc是model,View,Controler的缩写,译为模型,视图,控制器,分别代表应用程序中三种职责各不相同的对象.
对于mvc模型最主要的是知道:
1.模型不会有画面相关的程序代码(比如不会出现java中夹杂HTML代码)
2.视图负责画面相关逻辑
3.控制器知道某个操作必须调用哪些模型(原先Servlet中写HTML代码,证明它们之间有着数据上的联系,两者分开了,总需要有一个可以互相联系的方式)

model1:
在model1架构上,用户直接请求某个jsp页面(而非控制器转发),jsp收集请求参数并调用JavaBean来处理.业务逻辑的部分封装在JavaBean中,JavaBean也许还会调用一些后端的元件(如操作数据库).JavaBean处理完毕,jsp再从JavaBean中提取结果,进行画面的呈现处理.在model1架构中,jsp页面还负责了收集参数与掉哦用JavaBean的职责,维护jsp的人工作加重.jsp如果还夹杂html与java程序代码,也不利于java程序设计人员来处理画面逻辑.适用:减少请求转发的流程设计与角色区隔,适合中小型应用程序快速开发上
model1图:


model2的架构上,控制器,模型,视图各负的职责:
控制器:取得请求参数,验证请求参数,转发请求给模型,转发请求给页面,这些都使用程序代码来实现
模型:接收控制器的请求调用,负责处理业务逻辑,负责数据存储逻辑等,这部分还依应用程序功能,产生各多种不同职责的模型对象,模型使用程序代码来实现
视图:接收控制器的请求调用,会从模型提取运算后的结果,根据需求呈现所需的画面,在职责分配良好的情况下,基本可做到不出现程序代码,因此不会发生程序代码和HTML混杂在一起的情况.
model2图:

















评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值