- 1、本文档共8页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Servlet详细教程与重要知识点
1.1 简介
典型的桌面应用程序的示例有记事本,媒体播放器等等。是本地.exe程序。用户和桌面程序的交互如图1.1。
图1.1 用户和桌面程序的交互
随着Internet的兴起,现在大多数电脑用户更加习惯Internet的Web应用。用户和Web应用程序的交互如图1.2所示。
图1.2 用户访问网站
Web应用程序和桌面程序相比,优点如下。
首先,Web应用程序的访问更加容易,用于访问Web应用的标准协议为HTTP协议,为绝大多数操作系统所支持。此外,所要求的客户端仅仅是浏览器。
其次,维护和部署成本低,Web应用程序在浏览器中请求运行,不需要在每个客户端系统上安装客户端软件。Web应用程序代码可以再服务器端进行修改和维护,这将节省更新和部署应用程序所需要的时间和成本。
Web应用运行在服务器上,服务器是一台设备,它为网络上的不同设备,即客户端的请求提供信息。最初,通过编写CGI(Common Gateway Interface,通用网关接口)程序来实现数据在Web上的传输,但是,对于客户端作出的每个请求,必须创建CGI程序的一个新实例,这将占用大量内存。因此,为了解决这个问题,引入了Servlet技术。
Servlet是一个用Java编写的应用程序,在服务器上运行,处理请求的信息并将其发送到客户端。Servlet的客户端可以提出请求并获得该请求的响应,它可以使任何Java应用程序、浏览器或任何设备。对于所有的客户端请求,只需要创建Servlet的实例一次,因此节省了大量的内存。Servlet在初始化后即驻留内存中,因此每次作出请求时无需加载。
1.2 HTTP基础知识
用户的请求和Web应用程序的相应需要通过Internet从一台计算机发送到另一台计算机或服务器,使用超文本传输协议HTTP。HTTP是互联网上应用最为广泛的一种网络协议,是一个客户端和服务器端请求和应答的标准。客户端是终端用户,服务器端是网站。通过使用Web浏览器等工具,客户端发起一个到服务器上指定端口的HTTP请求。应答的服务器上存储着一些资源,比如HTML文件和图像。HTTP协议并没有规定必须使用它和基于它支持的层。 事实上,HTTP可以在任何其他互联网协议上,或者在其他网络上实现。HTTP只假定其下层协议提供可靠的传输,任何能够提供这种保证的协议都可以被其使用。
1.2.1 GET和POST方法区别
HTTP请求消息使用GET或POST方法以便在Web上传输请求。
检索信息时一般用GET方法,如检索文档、图表、或数据库查询结果。要检索的信息作为字符序列传递,称为查询字符串。因此,传递的数据对客户端是可见的,即将查询字符串附加到URL中,但是,查询字符串的长度有限制,最多124字节。GET方法是表单默认的方法。
我们用google检索“java”,可以知道google使用了GET方法对用户输入的搜索字符串检索搜索结果。如图1.1所示。
图1.1
HTTP定义的另一种请求方法是POST方法。使用POST发送的数据对客户端是不可见的,且对发送的数据的量没有限制。
下面我们来对比一下GET和POST方法。
GET是从服务器上获取数据;POST是向服务器传送数据。
在客户端,GET通过URL提交数据,数据在URL中可见;POST把数据放在form的数据体内提交。
GET提交的数据最多只有1024字节;POST提交的数据量无限制。
由于使用GET时,参数会显示在地址栏上,而POST不会,所以,如果这些数据是非敏感数据,那么使用GET;如果包含敏感数据,为了安全,用POST。
1.3 Servlet简介和优点
自427年1月Sun Microsystems公司所组成的JavaSoft部门将Servlet API定案以来,推出了Servlet API1.0,就当时功能来说,Servlet所提供的功能包含了当时的CGI与Netscape Server API(NSAPI)之类产品的功能。发展至今,它依旧是一个具有跨平台特性、10% Pure Java的Server-Side程序,Servlet不只限定于HTTP协议,开发人员可以利用Servlet自定义或延伸任何支持Java的Server,包括Web Server、Mail Server、Ftp Server、Application Server或任何自定义的Server。
Server有以下优点:
可移植性,Servlet皆是利用Java语言来开发的,因此,延续Java在跨平台上的表现,不论Server的操作系统是什么,Windows、Linux、Solaris、HP-UX等,都能够将我们写好的Servle
您可能关注的文档
- Rational Rose 用例图、顺序图、活动图、类图、状态机图 实例.doc
- RationalRose的四种视图模型.doc
- Raisecom设备简易操作指南.doc
- Q-FT B039-2006汽车产品油漆涂层技术条件.doc
- realflow参数介绍.doc
- RC串联电路.doc
- Reading Skills阅读技巧.doc
- ResearchontheBenefitDistributionandRiskManagementofSupplyChain.doc
- Responsibilityoftheyounggeneration.docx
- RadwareDNS全局配置.doc
- 2023年江苏省镇江市润州区中考生物二模试卷+答案解析.pdf
- 2023年江苏省徐州市邳州市运河中学中考生物二模试卷+答案解析.pdf
- 2023年江苏省苏州市吴中区中考冲刺数学模拟预测卷+答案解析.pdf
- 2023年江苏省南通市崇川区田家炳中学中考数学四模试卷+答案解析.pdf
- 2023年江西省吉安市中考物理模拟试卷(一)+答案解析.pdf
- 2023年江苏省泰州市海陵区九年级(下)中考三模数学试卷+答案解析.pdf
- 2023年江苏省苏州市高新二中中考数学二模试卷+答案解析.pdf
- 2023年江苏省南通市九年级数学中考复习模拟卷+答案解析.pdf
- 2023年江苏省南通市海安市九年级数学模拟卷+答案解析.pdf
- 2023年江苏省泰州市靖江外国语学校中考数学一调试卷+答案解析.pdf
文档评论(0)