目录
请求和响应
1、HttpServletResponse对象
(1)、(状态码)setStatus(int status)方法
(2)、(状态码)sendError(in sc)方法
(3)、(响应消息体)getOutputStream()方法
(4)、(响应消息体)getWriter()方法
2、HttpServeltRequest对象
(1)、(请求行)XXXXX
(2)、(请求消息头)XXXXX
会话及其会话技术
1、Cookie对象
(1)、Cookie构造方法
(2)、Cookie类的常用方法(略)
浏览器发送请求消息给服务器,然后服务器返回响应消息,没有请求不会有响应,有请求一定会有响应。
状态码 状态码2
响应消息分为状态行、响应消息头、响应消息体
设置响应消息的状态码,并生成状态行,正常情况下web服务器默认生成状态码为200的状态行
发送错误消息的状态码比如404,可以通过重载方法,在发送状态码外增加一条提示性的文本
public void sendError(int code, String message)throws java.io.IOException
(响应消息头)XXXXX
用于输出二进制格式的响应内容
用于输出内容为字符文本的网页文档
getOutputStream()方法和getWriter()方法不能同时使用
请求消息包括请求行、请求消息头、请求消息体
请求行包括请求方法、请求资源名、请求路径
向服务器传递附加消息,客户端可以接受的数据类型、压缩方式、语言等
一个用户在某网站上的整个购物过程就是一个会话,可以认为为我们的一系列网上行为在计算机方面就可以理解为会话,书上说在web开发中,服务器追踪用户信息的技术称为会话技术。
由于Request对象只保存本次请求的数据,但是我们购物过程会发生多次请求,提交购物清单是一个请求,结账是一个请求,两个请求无法结合,当你发送结账请求的时候,查询不到你的购物清单信息。
ServletContext对象保存了所有用户的数据,因为一个web应用共享的是一个对象,所以结账请求会把所以用户的购物清单都结算在一起,无法区分哪些商品属于那些用户,所以为了保存会话技术中产生的数据,提供了两个用于保存会话数据的对象Cookie对象和Session对象
用户第一次访问服务器的时候,服务器会在响应消息中增加一个Set-Cookie头字段,将用户信息以Cookie的形式发送给浏览器,用户浏览器要是接受服务器发出的Cookie消息,就会将它保存在浏览器的缓存区,当我们再次访问整个浏览器的时候,请求消息会直接将用户消息以cookie的形式发送给服务器,举个例子:我们首次登陆网站后,会提示是否保存信息,我们选择保存信息就是接受服务器发出的Cookie消息,它会将我们的登陆信息保存在浏览器的缓存区,我们再次登陆的时候不需要再次输入信息了,因为客户端已将我们保存的登陆信息以cookie的形式发送给服务器。
javax.servlet.http.Cookie类包含了生成Cookie信息和提取cookie信息各个属性的方法,
有且仅有一个构造方法,name指Cookie的名称,value指Cookie的值,名称不能修改,但是值可以修改
public Cookie(java.lang.String name,java.lang.String value)
SetMaxAge(int expiry)和getMaxAge()方法
用于设置和返回Cookie在浏览器上保持有效的秒数
设置的值为正整数:将Cookie信息保存在本地硬盘中,在没有超过指定时间内,同一台计算机上的浏览器都可以用该Cookie信息
设置的值为负整数:将Cookie信息保存在缓存中,浏览器关闭,信息会被删除
设置的值为0时:浏览器会立即删除这个Cookie信息