Http学习

1.HTTP协议
1)什么是HTTP协议
就是一个规范,约定了:
A.浏览器和服务器如何通信。
B.浏览器和服务器通信的数据格式。
2)如何通信
A.建立连接
B.发送请求
C.接收响应
D.关闭连接
特点:一次连接一次请求。
优点:尽可能降低服务器的压力。
3)数据格式
A.请求数据
--请求行
协议类型、请求方式、Servlet路径
--消息头
请求数据的一些描述信息
--实体内容
浏览器给服务器传递的具体数据
B.响应数据
--状态行
协议类型、状态码、状态
--消息头
响应数据的一些描述信息
--实体内容
服务器给浏览器返回的具体数据
注:
--以上数据的组成需要记住;
--具体数据的格式不用记住,
在服务器端(MyEclipse控制台),
在浏览器端(NetWork)可以很直观
的看到这些数据。
4)如何处理HTTP协议
A.如何处理通信
已经由浏览器和服务器共同处理完毕。
是由他们内部自带的通信组件完成的。
组件:满足规范的对象。
B.如何处理数据
a.在Java中,服务器端采用Servlet
处理通信数据。
b.service(request,response)
--request处理请求数据
--response处理响应数据
2.请求方式
1)什么是请求方式
浏览器向服务器发送请求传递数据的方式。
2)掌握2种方式:
A.get
--采用URL传递数据,即浏览器会将要
传递的数据附加在URL上传给服务器
--数据在传递的过程中可见,保密性差
--传递的数据大小受限,很小
B.post
--采用实体内容传递数据
--数据在传递的过程中不可见
--传递的数据大小不限,很大
3)使用场景
get:在浏览器向服务器索取(查询)数据时。
post:在浏览器向服务器提交数据时。
3.中文乱码
1)什么时候会出现乱码?
编码和解码的方式不一致。
2)请求时乱码
A.get
a.修改tomcat的配置文件,即修改
/tomcat/conf/server.xml中的70行,
增加URIEncoding="utf-8"。
b.不修改解码方式,让Servlet直接接收
乱码,然后采用ISO8859-1将其还原成
byte,再用UTF-8编成String。
c.建议,在get请求出现乱码时,尽量
使用post请求,因为post请求处理
乱码比较简单。
B.post
在使用request获取数据前,设置解码
方式为UTF-8
request.setCharacterEncoding("UTF-8")
3)响应时乱码
a.设置服务端编码方式
response.setCharacterEncoding("UTF-8")
b.设置客户端解码方式
response.setContentType(
"text/html;charset=UTF-8")
4)总结:
请求乱码:
a.get
避免在get请求中传中文,若一定要传,
改用post请求。
b.post
在获取数据前设置解码方式
req.setCharacterEncoding("utf-8")
响应乱码:
res.setContentType(
"text/html;charset=utf-8")

补充:
1.JavaBean
满足如下规范的类:
1)必须有包
2)必须有默认构造器
3)必须实现序列化接口
4)通常有get、set方法

posted @ 2016-05-12 22:43  霓羽决奕  阅读(119)  评论(0编辑  收藏  举报