[TOC]
![](https://img.kancloud.cn/2a/c5/2ac5901bba57a977056b4601310caa60_1357x530.gif)
## 问题01:cookie是什么?
cookie是小段的文本信息,可以标识用户身份,记录用户名和密码,跟踪重复用户等。
cookie是在网络**服务器上生成**,并发送给浏览器的。并以**key/value**的形式保存到**客户机**的某个指定目录中。
## 问题02:cookie的增删改查?
### 1. cookie的写入
```
Cookie cookie = new Cookie("name","value");
response.addCookie(cookie);
```
> **cookie不能保存中文**
> **void javax.servlet.http.HttpServletResponse.addCookie(Cookie cookie)**
> Adds the specified cookie to the response. This method can be called multiple times to set more than
one cookie.
### 2. 设置cookie的存活时间
```cookie.setMaxAg(int seconds) ```
> void javax.servlet.http.Cookie.setMaxAge(int expiry)
> **Parameters**: expiry an integer specifying the maximum age of the cookie **in seconds**; if **negative**, meansthe cookie is **not stored**; if **zero**, **deletes** the cookie.
### 3. 获取cookie数组
```request.getCookies();```
* [ ] 获取指定cookie的name
```cookie.getName() ```
* [ ] 获取指定cookie的value
```cookie.getValue() ```
### 4. EL读取cookie
```
${cookie.XXX.value}
```
## 问题03:保存中文Cookie
```
URLEncoder.encode(value,"UTF-8"))
```
> **如果需要使用EL表达式读取中文cookie,则可以使用自定义标签库,编写解码函数**
```
${custom:decoder(cookie.XXX.value,'UTF-8') }
```
- 1课程概述
- 2环境配置
- 3MVC
- 3.1View
- 3.1.1前端基础
- 3.1.2JSP语法
- 3.1.3JSP内置对象1
- 3.1.4JSP内置对象2
- 3.2Bean
- 3.3Controller
- 3.3.1Servlet
- 3.3.2Filter
- 3.3.3Listener
- 3.4EL&JSTL
- 4三层架构
- 4.1数据库操作
- 4.1.1JDBC
- 4.1.2JDBC优化
- 4.2三层架构设计
- 4.3程序优化
- 4.3.1数据库连接优化
- 4.3.2数据库操作优化
- 4.4安全专题
- 4.4.1Ajax异步查询
- 4.4.2CAPTCHA
- 4.4.3MD5&SHA
- 4.4.4Cookie
- 4.4.5分页显示
- 4.4.6文件上传
- 4.4.7发送邮件
- 5企业级框架
- 5.0Maven
- 5.1MyBatis
- 5.2Spring
- 5.3SpringMVC
- 6实践项目
- 6.1实验1-用户登录(MVC)
- 6.2实验2-访问统计(Servlet高级)
- 6.3实验3-三层架构
- 6.4实验4-安全信息系统