前言
Web开发技术发展回顾
图? 动态Web编程技术的发展历史随着Internet技术的广泛使用,Web技术已经广泛应用于Internet上,但早期的Web应用全部是静态的HTML页面,用于将一些文本信息呈现给浏览者,但这些信息是固定写在HTML页面里的,该页面不具备与用户交互的能力,没有动态显示的功能。很自然地,人们希望Web应用里应该包含一些能动态执行的页面,最早的CGI(通用网关接口)技术满足了该要求,CGI技术使得Web应用可以与客户端浏览器交互,不再需要使用静态的HTML页面。CGI技术可以从数据库读取信息,将这些信息呈现给用户;还可以获取用户的请求参数,并将这些参数保存到数据库里。CGI技术开启了动态Web应用的时代,给了这种技术无限的可能性。但CGI技术存在很多缺点,其中最大的缺点就是开发动态Web应用难度非常大,而且在性能等各方面也存在限制。到1997年时,随着Java语言的广泛使用,Servlet技术迅速成为动态Web应用的主要开发技术。Servlet技术规范下,浏览器向Web服务器内指定的Servlet发送请求,Web服务器根据Servlet生成对客户端的响应。图实际上,这是后来所有的动态Web编程技术所使用的模型,这种模型都需要一个动态的程序,或者一个动态页面,当客户端向该动态程序或动态页面发送请求时,Web服务器根据该动态程序来生成对客户端的响应。到了1998年,微软发布了ASP 2.0。它是Windows NT 4 Option Pack的一部分,作为IIS 4.0的外接式附件。它与ASP 1.0的主要区别在于它的外部组件是可以初始化的,这样,在ASP程序内部的所有组件都有了独立的内存空间,并可以进行事务处理。标志着ASP技术开始真正作为动态Web编程技术。当ASP技术在世界上广泛流行时,人们很快感受到这种简单的技术的魅力:ASP使用VBScript作为脚本语言,它的语法简单、开发效率非常高。而且,世界上已经有了非常多的VB程序员,这些VB程序员可以很轻易地过渡成ASP程序员——因此,ASP技术马上成为应用最广泛的动态Web开发技术。随后,由Sun带领的Java阵营,立即发布了JSP标准,从某种程度上来看,JSP是Java阵营为了对抗ASP推出的一种动态Web编程技术。ASP和JSP从名称上如此相似,但它们的运行机制存在一些差别,这主要是因为VBScript是一种脚本语言,无需编译,而JSP使用Java作为脚本语句——但Java从来就不是解释型的脚本语言,因此JSP页面并不能立即执行。因此,JSP必须编译成Servlet,这就是说:JSP的实质还是Servlet。不过,书写JSP比书写Servlet简单得多。作为一个和ASP对抗的技术,简单就是JSP的最大优势整个Web应用几乎全部由JSP页面组成,JSP页面接收处理客户端请求,对请求处理后直接做出响应。用少量的JavaBean来处理数据库连接、数据库访问等操作。Jsp model 1结构图
Model 1模式的实现比较简单,适用于快速开发小规模项目。但从工程化的角度看,它的局限性非常明显:JSP页面身兼View和Controller两种角色,将控制逻辑和表现逻辑混杂在一起,从而导致代码的重用性非常低,增加了应用的扩展性和维护的难度。
因此,JAVA技术人员开始引入MVC架构来处理控制逻辑和表现逻辑的分离。这就是人们所说的JSP Model2。这种模式下,将Servlet作为前端控制器,负责接收客户端发送的请求,在Servlet中只包含控制逻辑和简单的前端处理;然后,调用后端JavaBean来完成实际的逻辑处理;最后,转发到相应的JSP页面处理显示逻辑。
图:Jsp model 2 结构图
Model 2下JSP不再承担控制器的责任,它仅仅是表现层角色,仅仅用于将结果呈现给用户,JSP页面的请求与Servlet(控制器)交互,而Servlet负责与后台的JavaBean通信。在Model 2模式下,模型(Model)由JavaBean 充当,视图(View)由JSP页面充当,而控制器(Controller)则由Servlet充当。
由于引入了MVC架构,使Model 2具有组件化的特点,更适用于大规模应用的开发。Model 2提供了更好的可扩展性及可维护性,降低系统后期维护的复杂度。但也增加了前期开发的复杂程度。原本需要一个简单的JSP页面就能实现的应用,在Model 2中被分解成多个协同工作的部分,需花更多时间才能真正掌握其设计和实现过程。
MVC架构的引入为Java的web开发领域带来了全新的变革。各种web MVC框架的出现使得开发人员从原来的泥潭中爬出,开始专注于其他领域的问题。在前端,技术员开始寻找jsp的替代方案。在服务端,技术员把更多的
您可能关注的文档
- Accounting_Terms常用会计词汇中英对照介绍.doc
- ACCP指南+静脉血栓栓塞症的治疗介绍.doc
- 2016届四川省宜宾市第三中学高三上学期第一次月考文科综合试题介绍.doc
- ACOG的临床指南介绍.doc
- ACOG妇产科临床处理指南-宫颈癌的筛查介绍.doc
- 2016届四川省宜宾市高三上学期第一次诊断考试文综试题介绍.doc
- ACOG妇产科临床处理指南——会阴切开术介绍.doc
- 2016届四川省宜宾市高三上学期第一次诊断考试语文试题介绍.doc
- ACOG妇产科临床处理指南—临产和分娩时预防性抗生素的使用介绍.doc
- 2016届四川省资阳市高三第二次诊断考试文综试题介绍.doc
- 广东省广州省实验中学教育集团2025-2026学年八年级上学期期中考试物理试题(解析版).docx
- 广东省广州大学附属中学2025-2026学年八年级上学期奥班期中物理试题(解析版).docx
- 广东省广州市第八十六中学2025-2026学年八年级上学期期中物理试题(含答案).docx
- 广东省广州市第八十九中学2025-2026学年八年级上学期期中考试物理试题(解析版).docx
- 广东省广州市第二中学2025-2026学年八年级上学期期中考试物理试题(含答案).docx
- 广东省广州市第八十六中学2025-2026学年八年级上学期期中物理试题(解析版).docx
- 广东省广州市第八十九中学2025-2026学年八年级上学期期中考试物理试题(含答案).docx
- 广东省广州市第二中学2025-2026学年八年级上学期期中考试物理试题(解析版).docx
- 2026《中国人寿上海分公司营销员培训体系优化研究》18000字.docx
- 《生物探究性实验教学》中小学教师资格模拟试题.docx
最近下载
- 12S10管道支架、吊架建筑工程规范图集.pdf VIP
- 铸造工艺学(课本).pdf VIP
- 部编版二年级下册语文全册《写字表》生字字帖.pdf VIP
- 数学六年级上册100道口算题大全(全册各类齐全18份).doc VIP
- 八年级物理寒假提升精品讲义第01讲 力(预习)(原卷版).pdf VIP
- 波谱分析法课件.ppt VIP
- 数学分析第五版(上册)华东师大习题答案解析.docx
- 运筹学基础及应用-第1章-线性规划及单纯形法(胡运权版).ppt VIP
- 八年级物理寒假提升精品讲义第01讲 力(预习)(解析版).docx VIP
- 11S405-4 建筑给水塑料管道安装通用详图国标 建筑图集 汇编 .docx VIP
原创力文档

文档评论(0)