本章学完之后能干什么?
要把 知识点学好,那就需要把它相关的周边知识点了解全面
HTTP协议是web学习的核心!!!
学东东切忌只学配置,不学原理:只学会框架有什么用,要会自己写框架!!
web学习直接关系到J2EE的学习
一、HTTP?超文本传输协议?人类之所发展得如此快,就是因为有自己的语言
???????1、所谓超文本:即纯文本语言,不依赖于任何特定语言,任何语言都可以操作它(如java、c++)
???????2、传入:HTTP的应用价值在于传输
???????3、HTTP是无状态协议
????????基于请求/响应模型
????????服务器和客户端的交互仅限于请求/响应过程,结束之后便断开,在下一次请求服务器会认为新的客户端
二、要真正理解web工作原理,就必须彻底了解http协议
三、HTTP请求信息(浏览器信息)
???????1、请求行:GET/POST(流的组织(请求)方式)?URL(地址+目录)?版本号
???????2、请求头:Host:客户端IP和端口
?????????User-Agent:浏览器信息
?????????Accept:客户端能接收的数据类型
?????????Accept-encoding:是否支持压缩的流
?????????Accept-charset:客户端字符编码集
???????3、空行:分割请求头和消息体
???????4、消息体:请求的参数
四、HTTP响应信息(服务器信息)
???????1、状态行:HTTP版本 ?服务器状态(比如:404找不到...)?描述信息
???????2、响应头
????????content-text:服务器发送信息的类型
????????date:发送时间
????????server:服务器类型
???????3、消息体:服务器发送给客户端的页面内容
五、模型
???????客户端-----通过socket建立连接-----服务器
???????客户端-----请求----->服务器
???????客户端<-----响应-----服务器
???????客户端-----断开-----服务器
???????下一次连接.......
六、传统服务器
???????缺点:无法生成动态页面
????????于是加入一个辅助应用:通过客户端提交的参数来选择服务类型
七、辅助应用
???????1、在获取请求之后先执行一段代码,再返回页面
???????2、根据客户端请求参数来调用辅助应用
???????3、类似word文档,需要注册(注册表)
八、对于服务器的缺点的解决方案
???????1、最早的解决方案:CGI通用网关接口(一种与外部程序通讯的标准)
?????????原理:web服务器调用外部程序,再将返回的结果返回客户端
?????????CGI的缺点:每次客户端请求都要在服务器上开启一个进程,这样会大大消耗服务器资源
??????????更好的解决方案是:开启服务器进程一次,就处理所有请求
???????2、java的解决方案(解决CGI的缺点:其实CGI是现在web服务器的鼻祖):servlet+web容器
??????????servlet是一个与平台无关的java接口
??????????理解servlet,是掌握javaweb编程的核心
??????????sevlet受控于另一个java应用程序,它就是web容器
??????????servlet+web容器:为每个请求开启一个线程,线程占用进程的一部分
??????????sevlet没有main方法,说明它要被别的类web容器调用
??????????servlet到web容器需要用xml文件注册,而xml的解析由web容器封装
九、web容器对servlet的支持包括:
???????1、通讯支持:解析流,封装请求/响应对象
???????2、生命周期管理:我们书写的servlet由容器来调用,也就是sevlet的产生和消亡生命周期
???????3、多线程支持:解决线程同步,开启关闭等,由容器厂商来做
???????4、JSP支持:翻译页面
???????5、处理安全性:处理异常等等,比如:servlet抛出异常,由web容器来处理
???????总结:web容器主要是用于,给处于容器中的应用程序组件(servlet、jsp)提供一个环境,
???????使sevlet和jsp直接和容器中的环境变量交互。
???????这样我们就可以把注意力放在,用servlet实现业务逻辑上,不必为
???????系统底层服(如线程管理,安全性和网络通信等)务编写代码。
十、web容器的实现
???????根据sevlet的规范来实现web容器
???????servlet规范之定义了一个容器必须实现的标准功能。那么不同的容器厂商就有了更多的容器实现选择:
???????Tomcat
???????Jboss
???????WebLogic
???????WebSphere
???????Orecle9i AS
详细解决方案
HTTP协讲和web工作原理
热度:270 发布时间:2012-06-29 15:48:47.0
相关解决方案
- struts HTTP Status 500解决办法
- httpclient老是提示java.lang.NoSuchMethodError: org.apache.http.protocol.BasicHttpCon
- 启动tomcat后,http://localhost:8080无法打开的有关问题
- 相干tomcat HTTP Status 500的疑问,麻烦大家进来看看
- Web Service 错误:服务器未能识别 HTTP 头 SOAPAction 的值: http://tempuri.org/
- HTTP Status 404 - /jspdemo/Register.jsp,该怎么解决
- 'http://reg.163.com/login.jsp?type=1&url=http://entry.mail.163.com/coremail/fcg/,该如何处理
- org.apache.http.client.HttpClient与org.apache.commons.httpclient.HttpClient的差别
- HTTP 404有关问题
- myeclipse<%@ taglib prefix="c" uri="http://java.sun.com/jst1/core_rt"%>解决思路
- ,http 200状态码
- tomcat新手有关问题 HTTP Status 404 - /manager/
- java http 分段上载
- soap调用webservice,报错:Root element of a SOAP message must be: 'http://schemas.xmls,该怎么处理
- HTTP Status 404如何解决
- org.apache.tomcat.util.http.Parameters processParameters,该怎么解决
- 新手,HTTP Status 404 有关问题
- java http 断点上传,该如何处理
- JSP疑问<%@ taglib prefix="ht" uri="http://www.ht.com.cn/jsp/taglibs"%>该怎么处理
- weservice调用Server returned HTTP response code: 500 for URL解决方法
- HTTP Status 404 - /webproject2/servlet/login解决办法
- 报错:HTTP Status 405 - HTTP method GET is not supported by this URL解决思路
- http://newbbs.csdn.net/ 现时和老版的bbs用的还不是同一个库
- http://newbbs.csdn.net/ 现下和老版的bbs用的还不是同一个库
- Java.io.IOException: error 3 during http over WSP 这个是什么东东
- http://sourceforge.net这个网站是什么啊解决方案
- http 传送数据 每个包有大小限制码?解决办法
- Server returned HTTP response code: 403 for URL如何解决
- http://www.java-home.com重新下线,诚邀您的加入
- httpClient 错误 The server failed to respond with a valid HTTP response