一,使用Servlet作为表现层的三个劣势?
1.开发效率低,所有HTML的标签都需要使用页面输出流来完成。
2.不利于团队协作开发,美工人员无法参与Servlet界面的开发。
3.程序可维护性差,即使修改一个按钮的标题,都必须重新编辑Java代码,并重新编译。
二,在标准的MVC模式中,Servlet及作为什么使用?
Servlet仅作为控制器使用,Java EE应用架构正是遵循MVC模式的,对于遵循MVC模式的Java EE应用而言,JSP仅作为表现层(View)技术,作用有两点:
1.负责收集用户请求参数
2.将应用的处理结果,状态数据呈现给用户
Servlet则仅充当控制器(Controller)角色,它的作用类似于调度员:所有用户请求都发送给Servlet,Servlet调用Model来处理用户请求,并调用JSP来呈现处理结果;或者Servlet直接调用JSP将应用的状态数据呈现给用户。
三,Model一般由什么来充当?
Model通常由JavaBean来充当,所有业务逻辑,数据访问逻辑都在Model中实现,实际上隐藏在Model下的可能还有很多丰富的组件,例如DAO组件,领域对象等。

下面举个例子介绍使用Servlet作为控制器的MVC应用,该应用演示了一个简单的登录验证。






控制器负责接收客户端的请求,它既不直接对客户端输出响应,也不处理用户请求,只调用JavaBean来处理用户请求。
DbDao1负责完成查询,插入修改等操作。从上面这个应用的结构来看,整个应用的流程非常的清晰,下面是MVC中各个角色对应的组件:
1.M:即模型,对应JavaBean
2.V:即视图,对应JSP页面
3.C:即控制器,对应Servlet。

使用Servlet作为控制器相关推荐

  1. Servlet笔记1

    1.Servlet的介绍: jsp的本质就是一个Servet,当jsp页面部署在web容器中,web容器会将jsp编译成Servlet.并且jsp页面中的内容都在Servlet中的service()中 ...

  2. Java 面向对象编程、jQuery、JavaScript、servlet、javabean----理论知识

    一.继承 1.继承(优点:代码复用方便修改)     1.1 继承的关键字:extends     1.2 实现继承步骤(1.编写父类 2.编写子类继承父类)     1.3 调用父类方法的关键字:s ...

  3. 浅析 Servlet 执行原理

    在JavaWeb学习研究中,Servlet扮演重要的作用,学好它,是后续JavaWeb学习的良好基础.无论是SSH,还是SSM,微服务JavaWeb技术,都应先学好Servlet,从而达到事半功倍的效 ...

  4. JSP+JavaBean+Servlet技术(MVC模型)

    一,Servlet开发 用户在浏览器中输入一个网址并回车,浏览器会向服务器发送一个HTTP请求.服务器端程序接受这个请求,并对请求进行处理,然后发送一个回应.浏览器收到回应,再把回应的内容显示出来.这 ...

  5. 【Servlet】Servlet与MVC分层开发

    处理数据的业务逻辑servlet与开发分层 一.处理数据的业务逻辑servlet 1.Servlet是什么 1.1Servlet是运行在tomcat服务器端的一个java程序: 2.Servlet能干 ...

  6. JavaWeb开发模式:C/S模式,B/S模式,JSP+JavaBean模式,JSP+Servlet+JavaBean模式

    JavaWeb开发模式 1.C/S开发模式 1.C/S架构:客户端Client/服务端Server: a.出现较早,主要应用于局域网内: b.胖客户端:需要特定软件支持(安装客户端) 逻辑关系图如下: ...

  7. Struts2、SpringMVC、Servlet(Jsp)性能对比 测试 。 Servlet的性能应该是最好的,可以做为参考基准,其它测试都要向它看齐,参照...

    2019独角兽企业重金招聘Python工程师标准>>> Struts2.SpringMVC.Servlet(Jsp)性能对比 测试 . Servlet的性能应该是最好的,可以做为参考 ...

  8. jsp删除时提示_Java修行第058-059天 Servlet+JSP+JavaBean整合项目总结

    Servlet+JSP+JavaBean整合项目的总结 项目分层 本次项目的设计使用MVC模型来进行设计,MVC全称为model view controller,是模型视图控制器的缩写 Model 模 ...

  9. 基于Servlet的MVC模式用户登录实例

    关于MVC模式的简单解释 M Model,模型层,例如登录实例中,用于处理登录操作的类: V View,视图层,用于展示以及与用户交互.使用html.js.css.jsp.jQuery等前端技术实现: ...

最新文章

  1. 语义分割--Loss Max-Pooling for Semantic Image Segmentation
  2. 你可以不知道的JS二
  3. 盘点 IDEA2020.3 那些炫酷的插件,超级好用的那种
  4. vs2015改程序名字
  5. 7. U9成本核算基本流程概述
  6. QT解析 JSON 格式的数据
  7. wpf 点击某控件范围之外的区域 该控件隐藏_iOS平台设计规范(八)控件Controls...
  8. groupwise_GroupWise部分文档翻译
  9. Python爬取“Python小屋”公众号所有文章生成独立Word文档
  10. MFC的DLL中实现定时器功能
  11. oracle中自定义异常编号,Oracle自定义异常的使用
  12. 谷歌悄悄修复4个 0day
  13. 2022最新酷盒iApp源码V7.8版+内置超多功能
  14. android imageloader 路径,Android中的Universal-Image-Loader的使用
  15. java之集合ArrayList,LinkedList,HashMap运用
  16. 中国游客是否可以持中国驾照在美国自驾游?_游侠_新浪博客
  17. 非常不错的IOS学习网站
  18. 知乎之问和小雷之解: 现在的年轻人为什么都那么着急?
  19. 论文阅读:UER: An Open-Source Toolkit for Pre-training Models
  20. 高明领导不说狠话、不画大饼、不灌鸡汤,打造狼性团队就靠这9条

热门文章

  1. 线上比赛相关规则补充说明
  2. Type B和Type A的区别
  3. 钉钉企业内部开发工具配置
  4. 算法 - n个数字形成的圆圈中循环删除第m个数字(C++)
  5. ping: www.baidu.com: Temporary failure in name resolution
  6. 29_多易教育之《yiee数据运营系统》附录:扩展知识点汇总系列二
  7. css3圣诞节喜庆文字祝福代码
  8. sql2005如何修改服务器名称,sql2005 服务器名称设置
  9. Python DistributedDataParallel(DDP)训练模型
  10. keil 调试 操作系统_调试操作系统:内存分配的经验教训