动态网站开发讲课笔记07:会话及会话技术
文章目录
零、本节学习目标
- 了解什么是Cookie
- 掌握Cookie对象的使用
- 了解什么是Session
- 掌握Session对象的使用
一、Cookie对象
(一)什么是Cookie
- 目标:了解什么是Cookie
1、Cookie的概念
- 在现实生活中,当顾客在购物时,商城经常会赠送顾客一张会员卡,卡上记录用户的个人信息(姓名,手机号等)、消费额度和积分额度等。顾客一旦接受了会员卡,以后每次光临该商场时,都可以使用这张会员卡,商场也将根据会员卡上的消费记录计算会员的优惠额度和累加积分。在Web应用中,Cookie的功能类似于会员卡,当用户通过浏览器访问Web服务器时,服务器会给客户端发送一些信息,如用户信息和商品信息,这些信息都保存在Cookie中。这样,当该浏览器再次访问服务器时,会在请求头中将Cookie发送给服务器,方便服务器对浏览器做出正确地响应。
2、如何设置Cookie
- 服务器向客户端发送Cookie时,会在HTTP响应头字段中增加Set-Cookie响应头字段。Set-Cookie头字段中设置的Cookie的具体示例:
Set-Cookie: user=hdl; path=/;
user表示Cookie的名称,howard表示Cookie的值,path表示Cookie的属性。Cookie必须以键值对的形式存在,Cookie属性可以有多个,属性之间用分号“;”和空格分隔。
(二)了解Cookie API
- 目标:掌握Cookie类的构造方法和常用方法
1、构造方法
- Cookie类有且仅有一个构造方法,具体语法格式:
public Cookie(java.lang.String name, java.lang.String value);
- 在Cookie的构造方法中,参数name用于指定Cookie的名称,value用于指定Cookie的值。需要注意的是,Cookie一旦创建,它的名称就不能再更改,Cookie的值可以为任何值,创建后允许被修改。
2、常用方法
方法声明功能描述 | |
String getName() | 用于返回Cookie的名称 |
void setValue(String newValue) | 用于为Cookie设置一个新的值 |
String getValue() | 用于返回Cookie的值 |
void setMaxAge(int expiry) | 用于设置Cookie在浏览器客户机上保持有效的秒数 |
int getMaxAge() | 用于返回Cookie在浏览器客户机上保持有效的秒数 |
void setPath(String uri) | 用于设置该Cookie项的有效目录路径 |
String getPath() | 用于返回该Cookie项的有效目录路径 |
void setDomain(String pattern) | 用于设置该Cookie项的有效域 |
String getDomain() | 用于返回该Cookie项的有效域 |
void setVersion(int v) | 用于设置该Cookie项采用的协议版本 |
int getVersion() | 用于返回该Cookie项采用的协议版本 |
void setComment(String purpose) | 用于设置该Cookie项的注解部分 |
String getComment() | 用于返回该Cookie项的注解部分 |
void setSecure(boolean flag) | 用于设置该Cookie项是否只能使用安全的协议传送 |
boolean getSecure() | 用于返回该Cookie项是否只能使用安全的协议传送 |
(三)使用Cookie的语法
1、导入包
import = "javax.servlet.http.Cookie"
2、创建Cookie
Cookie newCookie = new Cookie("parameter", "value");
参数 | 含义 |
parameter | 用于代表cookie的名称(key) |
value | 用于表示当前key名称所对应的值 |
3、写入Cookie
response.addCookie(newCookie)
上一篇: 动态网站开发讲课笔记
下一篇: Web 基础入门指南