统计
  • 建站日期:2019-12-01
  • 文章总数:2002 篇
  • 评论总数:2124 条
  • 分类总数:21 个
  • 最后更新:11月21日
文章 未分类

【JavaWeb】Model1和Model2

程序员阿鑫
首页 未分类 正文

 一、前言

        在学习JavaWeb的过程中,大家都会接触到Model1和Model2,历史的发展过程是Model1→Model2。那么它们之间有何相同之处和不同之处呢?

二、Model1

       Model1使用了两种技术:JSP+JavaBean。

【JavaWeb】Model1和Model2-程序员阿鑫-带你一起秃头-第1张图片

【JavaWeb】Model1和Model2-程序员阿鑫-带你一起秃头-第2张图片

在Model1模式下,整个Web应用几乎全部由JSP页面组成,JSP页面接受处理客户端请求,对请求处理后直接做出响应。用少量的JavaBean来处理数据库连接、数据库访问等操作。

 

        优点:架构简单,比较适合小型项目开发。

        缺点:从工程化角度看,它的局限性非常明显;JSP的职责不单一,身兼View和Controller两种角色,将控制逻辑职和表现逻辑混杂在一起,职责过重,代码的可复用性低,不便于维护。

三、Model2

        Model2使用了三种技术:JSP+Servlet+JavaBean。

        1、JSP的主要作用是显示页面。

        2、Servlet作为前端控制器,负责接收客户端发送的请求。它的主要作用是取得表单参数、调用业务逻辑、转向页面(转发或重定向)。

        3、JavaBean的主要作用是负责处理业务逻辑、访问数据库、保存数据状态(也就是我们常说的B层、D层、实体层的集合体)。

【JavaWeb】Model1和Model2-程序员阿鑫-带你一起秃头-第3张图片

【JavaWeb】Model1和Model2-程序员阿鑫-带你一起秃头-第4张图片

实际上,Model2就是MVC的一个成功应用。模型(JavaBean)、视图(JSP)、控制器(Servlet)。

正如上图所示,Model2下的JSP不在承担控制器的责任,它仅仅是表现层角色,仅仅用于将结果呈现给用户。浏览器发来的请求与Servlet(控制器)交互,而Servlet负责与后台的JavaBean通信。在Model2模型下,模型(Model)由JavaBean充当,视图(View)有JSP页面充当,而控制器(Controller)则由Servlet充当。

          优点:职责清晰,各司其职,互不干扰,有利于组件的重用,适合大型的Web项目。

          缺点:不适合小型项目、对开发人员要求更高。

(注:图中所说的业务逻辑实际上是广义的说法,可以认为就是JavaBean)

 

版权说明
文章采用: 《署名-非商业性使用-相同方式共享 4.0 国际 (CC BY-NC-SA 4.0)》许可协议授权。
版权声明:未标注转载均为本站原创,转载时请以链接形式注明文章出处。如有侵权、不妥之处,请联系站长删除。敬请谅解!

-- 展开阅读全文 --
这篇文章最后更新于2021-3-26,已超过 1 年没有更新,如果文章内容或图片资源失效,请留言反馈,我们会及时处理,谢谢!
微信小程序 怎么让超出字数的文本变成小点点 我只需要3行代码!
« 上一篇
Java WEB实现URL重写的优缺点及如何实现
下一篇 »

发表评论