总结(二)HTTP协议状态码、常用的Web服务器和浏览器及Web应用程序的发展过程

  • 准备写总结的前十分钟,在昏暗的灯光下,疯狂的戳着F6键,咦,我的键盘怎么不亮了,按到手抽筋,果断关机,在开机,感叹:果然啊,老师说的没错,关机能解决百分之九十九的问题,剩下的问题就是你该换电脑了!

一、浏览器和Web服务器之间交互的桥梁——HTTP协议

  • HTTP协议(超文本传输协议)是浏览器和服务器之间的应用层通信协议,它基于TCP/IP;
  • 在HTTP协议下的客户端/服务端模式的信息交换过程:
    (1)建立连接:通过申请套接字(Socket)实现
    (2)发送请求信息:客户端发送请求消息到服务端的停留端口上
    (3)发送响应信息:服务器处理完请求之后,向客户机发送响应消息
    (4)关闭连接:客户端和服务端都可以通过关闭套接字去结束TCP/IP对话

二、HTTP协议状态码

  • 说到这里,前几天有个同学去面试被问到的一个知识点:请说一下常见的HTTP协议状态码的含义?
    这里稍微总结一下:
    1**:请求收到,继续处理
    2**:操作成功收到,分析、接受
    3**:完成请求客户需进一步细化请求
    4**:客户错误
    5**:服务器错误
    常见的有200:表示交易成功;404:一般为路径错误;500:服务器发生内部错误,我理解为代码内部错误

三、Web服务器和Web浏览器

  • 常见的Web浏览器有:IE浏览器;火狐浏览器;谷歌浏览器

  • 常见的Web服务器有:Tomcat(轻量级);JBoss(重量级);Apache服务器(处理静态页面的效率很高)

四、Web应用程序的发展过程

(1)传统的Web服务器模式开发:仅提供有限的HTML静态页面

存在缺点:
		不能提供及时信息,页面上提供的都是静态不变的信息
		当需要添加新的信息时,必须重新编写HTML文件
		由于HTML是静态的,所以不能满足用户的各种需求

(2)CGI的(Common Gateway Interface,公共网关接口)出现:能够提供动态页面的生成

存在缺点:
	需要为每一个请求启动一个操作CGI程序的系统进程,如果请求非常频繁,这将会带来很大的开销
	需要为每个请求加载和运行一个CGI程序,这也会带来很大开销,
	需要重复编写处理网络协议的代码及进行编码,这些工作非常耗时

(3)Java Servlet的出现(改进的CGI):具有很好的移植性

相比于CGI,他的优点表现为:
	只需要启动一个操作系统进程以及加载一个JVM,大大降低了系统的开销
	Servlet能够直接与Web服务器进行交互,,而普通的CGI程序不能,
	Servlet还能再各个程序共享数据,使得数据库连接池之类的功能很容易实现
缺陷:Servlet生成网页的方法是在Java类中嵌入html代码和表达式,当我们要对html做一个小小的改动时,都需修改和编译Servlet源文件,然后重新进行部署,使得修改代码十分的麻烦

(4)JSP(Java Servr Pages):Servlet的模板,是一种实现普通静态HTML和动态HTML混合编码的技术。

五、JSP的基本原理

	Web容器处理JSP文件请求需要经过三个阶段
	(1)翻译阶段:编写好的JSP文件会被Web容器中的JSP引擎转换为java源代码(Servlet引擎)
	(2)编译阶段:java源代码被编译成可执行的字节码文件
	(3)请求阶段:容器接受了客户端的请求以后,执行字节码文件,处理完请求之后,在将生成的页面反馈给客户端进行显示。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值