servlet的应用和http协议介绍

Servlet是一种独立于平台和协议的服务器端的Java应用程序,可以生成动态的web页面。它担当Web浏览器或其他http客户程序发出请求、与http服务器上的数据库或应用程序之间交互的中间层。

Web应用程序简介

应用程序:指允许用户执行特定任务的软件程序,主要分为桌面应用程序和Web应用程序两种类型。

桌面应用程序(DesktopApplication):一般是指采用客户机/服务器结构(Client/Server)的应用程序。

当客户端提交请求时服务器给予响应。该模式可以充分利用两端硬件环境的优势,将任务合理分配到Client端和Server端来实现,这就降低了系统的通信开销。

缺点:

(1)应用受到限制:无论是Client端还是Server端都需要特定的软件支持,客户端需要一定的软件平台的限制。        

(2)不易维护:服务器端的程序和客户端的程序都需要维护,如果软件需要升级,会带来更大麻烦,尤其是不同的操作平台可能会有一些系统漏洞。

(3)不利于使用。在安装过客户端的电脑上才可以使用,不能直接调用服务器的程序。

Web应用程序一般是指采用浏览器和服务器结构(Browser/Server,简称B/S结构)的应用程序。

Web应用程序由Web服务器和Web客户端组成。

优点:

(1)易于维护:基于B/S模型的系统当需要升级或维护时,只需修改服务器程序即可。

(2)易于实现。B/S模型的表现层可以用制作网页的html来实现,浏览器和网页设计技术已经相当成熟。而且用Java技术开发的Web系统可以安装在任意一种服务器系统平台上,也就是常说的具有跨平台性。

(3)使用方便,无论客户在什么地方,只要服务器正在运行,客户就能通过网络进行连接,实现对数据的访问和操作。

缺点:增加了服务器的压力。把业务实现都放在服务器上,当有大量用户访问时,势必给服务器带来很大的负担,更有可能造成系统崩溃,所以一定要做好系统数据的备份。

HTTP 协议

Web客户端和Web服务器之间的通信依赖于HTTP协议,该协议支持简单的请求和响应会话。客户发送一个HTTP请求,服务器会用一个HTTP响应做出应答。

Web浏览器除了可以从本地硬盘上打开网页文档外,还可以使用HTTP网络协议从网络上的Web服务器上获取网页文档的内容。

当用户在浏览器地址栏中输入网址或通过超链接访问目的网站时,都向目标主机(web服务器)发送一个http请求。http定义的信息交互处理由以下4步组成:

浏览器与Web服务器建立连接

浏览器向服务器提出请求

如果请求被接受,则服务器送回响应,响应信息中包括状态码和所需要的文件。

浏览器和web服务器断开连接。

HTTP向服务器发出一段请求也就是一段报文,是由以下4个部分组成的文本:

请求行:有三个标记组成,即请求方法、请求url和http版本,他们用空格分隔。例如,GET /index.html HTTP1.1

请求头标:由关键字和值对组成,每行一对,关键字和值用冒号(:)分隔。请求头标通知服务器关于客户端的功能和识别。

空行:最后一个请求头标之后是一个空行,发送回车符和退行,通知服务器不再有头标。

请求数据:使用Post发送数据。

一个响应由4个部分组成,这些部分与请求报文的部分基本相同:

状态行由3个部分组成:http版本、响应代码和响应描述。

响应代码:为3位数字代码,指出请求的成功或失败,如果失败,则指明原因。

HTTP请求

GET请求

在Google的搜索栏中搜索“java”关键字的相关内容时,浏览器发送的就是HTTP GET请求。

用GET发送的参数数据会追加到URL后面,在浏览器地址栏中显示出来,所以发送的数据会完全暴露(不能把口令或其他敏感数据用GET请求来发送)。

GET请求中查询字符串的长度限制在240~255个字符。

POST请求

POST请求数据在地址栏内不可见,相对比较安全

POST请求提交的数据在理论上没有长度的限制


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值