- 1、本文档共21页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第7章Servlet编程技术
Servlet技术是目前流行的开发模式MVC的基础,而JSP技术就是基于Java Servlet的。因此,要对JSP有更深入的了解,就需要掌握Servlet。
7.1Servlet概述
Servlet已经出现了很长时间,目前已经是一种非常成熟的技术。JSP与Servlet结合使用非常有效。
7.1.1Servlet简介
Servlet是与平台无关的服务器端小程序,从本质上讲,Servlet是一个Java类,除图形界面以外,Java语言能实现的功能,Servlet基本上都能实现。
Servlet主要用于处理客户端传来的HTTP请求,并将处理结果以HTTP形式返回客户端,从而生成动态网页。Servlet和客户端协作是通过请求—响应模式来进行处理,如下图所示。
Servlet是Java技术对CGI(通用网关接口)编程的回应,但与传统的CGI和许多其他类似CGI的技术相比,Java Servlet具有更高的效率,更容易使用,功能更强大,并具有更好的可移植性,更节省投资。
Servlet的主要优点有以下几点:
(1)可移植性。Servlet是利用Java语言开发的,因此延续Java在跨平台上的表现,不论Server的操作系统是Windows、Linux、FreeBSD或AIX等,都能够很好地执行。当程序员在开发Applet 时,“可移植性(portability)”是比较难以解决的问题。例如,开发Applet时,为了配合客户端的平台(即浏览器版本的不同,plug-in的JDK版本也不尽相同),达到满足真正“跨平台”的目的时,需要花费大量时间来修改程序。但即使如此,往往也只能满足大部分用户,而其他少数用户若要执行Applet,仍须先安装合适的JRE (Java runtime environment)。但是如果使用Servlet就比较简单了,主要原因在于Servlet 是在Server 端执行的。
(2)强大的功能。Servlet能够完全发挥Java API 的威力,包括网络和URL 存取、多线程(multithread)、影像处理、RMI(remote method invocation)、分布式服务器组件(enterprise Java bean)、对象序列化(object serialization) 等。
(3)高性能。Servlet 在加载执行之后,其对象实体(instance)通常会一直停留在Server的内存中,若有请求(request)发生时,服务器再调用Servlet 来服务,若收到相同服务的请求时,Servlet会利用不同的线程来处理,不像CGI程序必须产生许多进程(process)来处理数据。因此在性能的表现上,Servlet大大超越CGI程序。
而且Servlet在执行时,不是一直停留在内存中,服务器会自动将停留时间过长、一直没有执行的Servlet从内存中移除,这个过程用户也可以自行编写程序来控制。其停留时间的长短通常和选用的服务器有关。
(4)安全性高。Servlet也有类型检查(type checking)的特性,并且由于Java的垃圾收集(garbage collection)与没有指针的设计,使得Servlet 避免了内存管理的问题。由于在Java的异常处理(exception handling)机制下,Servlet能够安全地处理各种错误,不会因为发生逻辑错误而导致整体服务器系统的毁灭。
由于Servlet的种种优点,Java Servlet有着十分广泛的应用。它不单单能简单地处理客户端的请求,借助Java的强大的功能,使用Servlet还可以实现大量的服务器端的管理维护功能,以及各种特殊的任务,具体有以下几方面:
(1)创建并返回一个包含基于客户端请求的动态内容的HTML页面。
(2)创建可嵌入到现有HTML页面中的HTML代码片断。
(3)与其他服务器资源(包括数据库或基于Java的应用程序)进行通信。
(4)对特殊的处理采用MIME类型过滤数据。
(5)当在允许以单连接方式传送数据的情况下,在浏览器上打开服务器至Applet的新连接,并将该连接保持在打开状态。在客户机和服务器简单、高效地执行会话的情况下,Applet也可以启动客户浏览器和服务器之间的连接。可以通过定制协议或标准进行通信。
7.1.2Servlet与JSP的关系
JSP和Servlet的关系十分密切。由于JSP是作为一种简化Servlet开发的替代方法出现的,所有JSP页面在执行时都被转换为Servlet并被编译成字节码文件,随后在Servlet容器中运行,因此人们往往误认为JSP是一种比Servlet优秀并可以完全替代Servlet的技术。首先,从技术角度上看,JSP和Servlet的功能
您可能关注的文档
- 天津科技《病理学与病理生理学》教学资料 教学课件 第15章.pptx
- 上交大《高速铁路乘务人员形象塑造》教学资源 教学课件 模块1.pptx
- 西财《学前教育科学研究方法》教学资源 教学课件 单元二.pptx
- 西财《学前儿童英语教育(第2版)》教学资料 教学课件 项目三.pptx
- 《民航客舱服务与管理》(上海交通大学出版社) 模块五.pptx
- 上交大《高速铁路动车乘务实务》教学资源 教学课件 模块6.pptx
- 凤凰科技《计算机应用基础》PPT课件 模块6.ppt
- 哈工程《城市轨道交通客运服务》教学资源 教学课件 项目1.pptx
- 《城市轨道交通车站设备》 模块9.ppt
- 《社会调查研究方法》 第十一章.ppt
最近下载
- 2024《学前教育法》解读PPT课件.pptx
- 康明发 K280水平关节机器人说明书3.pdf
- 过程控制系统(毕业论文)精馏塔控制系统设计.doc
- 2025年南京市河西新城区国有资产经营控股集团有限责任公司人员招聘笔试模拟试题及答案解析.docx VIP
- 金堂县自来水红旗水库取水工程——原水输水管道复线工程非重大变动环境影响分析.pdf
- 医疗器械的人类受试者临床研究-临床试验质量管理规范(ISO 14155 :2020)中文版.pdf VIP
- 2025年学校体育活动经费预算计划.docx VIP
- 打造企业文化之基助力企业和谐发展.pdf VIP
- 动火作业安全培训.ppt VIP
- BM11_05_BladeEditor.ppt VIP
文档评论(0)