Mode I: 就是在开发中,将显示层,控制层,数据层的操作统一交给JSP或JavaBean来进行处理。

客户端通过访问JSP,调用里面的JavaBean,而通过JavaBean调用数据库,在JavaBean中包含了专门处理数据的操作,数据层主要以DAO为主,除了数据之外还有业务的处理。

开发中就存在一个问题,现在的程序要JSP+JavaBean一起开发完成后才可以使用,就会出现推诿的问题。分工不明确。所以,这种开发只适合于较快速的开发,但是后期维护困难。而且代码在JSP中,scriptlet代码非常多。

Mode II:Model-View-Controller

所有开发都以servlet为主题展开的,由servlet接收所有的客户端请求,之后根据请求调用响应的JavaBean,并将所有的结果返回给JSP,这就是MVC设计模式。

servlet特点:可以接受用户的请求参数,还可以调用java程序,而且本身是以java程序运行的,所以比JSP性能高,安全性也高。

最终servlet所有操作的内容都要交给JSP显示,这样servlet不方便显示的缺点就避免了。

1. JavaBean完成具体的单个的功能

2. JSP完成显示功能

3. Servlet完成连接JSP和JavaBean

JSP->Servlet->JavaBean,这种设计特别适合大型项目的开发,而且维护方便。

MVC设计模式中,最关键的部分就是使用RequestDispatcher接口,因为显示内容都通过此接口保存到JSP页面上显示。

MVC有自己的处理流程,实际上最重要的就是输出和跳转的问题。

由于所有内容都要交过JSP进行显示,最方便的属性范围就是request属性范围,例如以一个雇员列表操作威力,可以发现,JSP只是显示数据而已,但是这些数据要是通过MVC设计模式完成的话,肯定这些数据只是在一个JSP钟显示一次即可,而且servlet应该负责将所有的一次显示的内容交过JSP完成,那么最合适的属性范围就是request了。

因为之前强调过,能用page就不用reequest,能用request就不用session,能用session就不使用application。

从实际开发来讲,session属性范围用于登录验证使用较多,而request属性范围主要的功能就是在MVC设计模式上,将servlet内容交过JSP显示,而且这种显示在另外一次提交之后属性就消失了。

Servlet程序开发--WEB开发模式(Mode I, Mode II)的更多相关文章

  1. SpringMVC内容略多 有用 熟悉基于JSP和Servlet的Java Web开发,对Servlet和JSP的工作原理和生命周期有深入了解,熟练的使用JSTL和EL编写无脚本动态页面,有使用监听器、过滤器等Web组件以及MVC架构模式进行Java Web项目开发的经验。

    熟悉基于JSP和Servlet的Java Web开发,对Servlet和JSP的工作原理和生命周期有深入了解,熟练的使用JSTL和EL编写无脚本动态页面,有使用监听器.过滤器等Web组件以及MVC架构 ...

  2. java web 开发三剑客 -------电子书

    Internet,人们通常称为因特网,是当今世界上覆盖面最大和应用最广泛的网络.根据英语构词法,Internet是Inter + net,Inter-作为前缀在英语中表示“在一起,交互”,由此可知In ...

  3. web开发学习路线

    第一阶段: HTML+CSS: HTML进阶.CSS进阶.div+css布局.HTML+css整站开发. JavaScript基础: Js基础教程.js内置对象常用方法.常见DOM树操作大全.ECMA ...

  4. 如何学习web开发环境搭建和脚手架

    Web前端的学习路线 第一阶段: HTML+CSS: HTML进阶.CSS进阶.div+css布局.HTML+css整站开发. JavaScript基础: Js基础教程.js内置对象常用方法.常见DO ...

  5. 看透Spring MVC:源代码分析与实践 (Web开发技术丛书)

    第一篇 网站基础知识 第1章 网站架构及其演变过程2 1.1 软件的三大类型2 1.2 基础的结构并不简单3 1.3 架构演变的起点5 1.4 海量数据的解决方案5 1.4.1 缓存和页面静态化5 1 ...

  6. Java开发web的几种开发模式

    Java Web开发方案有多种可供选择,这里列举一些经典的开发模式进行横向比较,为Java Web的开发模式选择提供参考.除此之外还有好多方案(如Tapestry和Wicket等等)并不了解,这里就不 ...

  7. Web开发模式【Mode I 和Mode II的介绍、应用案例】

    开发模式的介绍 在Web开发模式中,有两个主要的开发结构,称为模式一(Mode I)和模式二(Mode II) 首先我们来理清一些概念吧: DAO(Data Access Object):主要对数据的 ...

  8. Java Web开发模式

    一 Java Web开发模式的变迁 1 最初的Java web服务器端编程技术是Servlet,利用Servlet就可以开发出一个Web应用程序. 2 为了解决Servlet缺陷,SUN推出了JSP技 ...

  9. Java Web 开发的JavaBean + Servlet + Sql Server

    日期:2018.12.9 博客期:026 星期日 我知道对于每个人都需要对开发web进行了解,而我们常用的技术,也应该有所了解 /*<------------------->*/知识点: ...

随机推荐

  1. zendstudio 安装 手册

    安装 http://jingyan.baidu.com/article/b907e627b14fbb46e6891c65.html 选择baidu官方32bit安装 补丁破解网址 http://dwt ...

  2. LYF模板连接.txt

    在解决方案里创建了一个新建网站,在其右键下添加一个模板后,准备使用模板的,在添加新建项里突然没有“使用模板页的web窗体”,顿时感觉悲剧... 解决方法:模板页代码---LYFMaterPage.Ma ...

  3. Ubuntu+Django+mod_wsgi+Apache配置过程

    Ubuntu15.10 Apache2.4( sudo apt-get install apache2 ) Python3.4( sudo apt-get install apache2 ),  [系 ...

  4. web开发——水到渠成

    1.tomcat中设置编码格式:      打开server.xml,添加下面红色框框里面的内容.  

  5. android 进程(复习)

        前台进程 前台进程是用户当前正在使用的进程.只有一些前台进程可以在任何时候都存在.他们是最后一个被结束的,当内存低到根本连他们都不能运行的时候.一般来说, 在这种情况下,设备会进行内存调度,中 ...

  6. HDU 3081 Marriage Match II

    二分图的最大匹配+并查集 每次匹配完之后,删除当前匹配到的边. #include<cstdio> #include<cstring> #include<cmath> ...

  7. centos7.2自带的php5.4升级为5.6

    参考:http://jingyan.baidu.com/article/380abd0a1f176c1d91192c4b.html 今天在新购的阿里云上部署个phpmyadmin,结果显示了个如下信息 ...

  8. listview前几个item的图片怎么是空白的、listview更新了ui不起作用、在handler里更新了UI不起作用

    不是不起作用,不信你可以在更新ui代码附近加输出的log,说明程序是跑到那里了.但是未达到我们的想要的效果. 我们知道在listview里更新UI,listview的适配器Adapter里有个getV ...

  9. 《Head.First设计模式》的学习笔记(9)--外观模式

    意图:为子系统中的一组接口提供一个一致的界面,Facade 模式定义了一个高层接口,这个接口使得这一子系统更加容易使用. 结构: 例子: 假设你有一套杀手级的家庭影院系统,内含DVD播放器.投影仪.自 ...

  10. project文件问题

    到编译文件中看看,红色的删除,坤哥这样做的 .