cookie
1.会话管理
打开浏览器,进行网页的浏览,到关闭浏览器的过程,称为一次会话
会话技术用两种技术
* cookie技术:客户端的技术
* session技术:服务器端的技术
2.cookie
1.分类
- 会话级别的cookie,在关闭浏览器之后,cookie销毁了,在默认的情况下是会话级别的cookie
- 持久化的cookie,在一定的时间范围内,cookie一致有效。
- 使用setMaxAge(int expiry)设置成持久化的cookie
2.方法
Cookie[] getCookies() :得到所有的cookie
addCookie(Cookie cookie) :把cookie返回到浏览器中(回写)
new Cookie(String name, String value)第一个参数是cookie名称,第二个参数是值
getName() :得到cookie的名称
getValue() :得到cookie的值
setMaxAge(int expiry) :设置cookie的有效时长
setPath(String uri) :设置cookie的有效路径
setPath("/com")
访问路径: http://127.0.0.1/com/demo1 ,会携带cookie信息
访问路径: http://127.0.0.1/com/demo2 , 不会携带cookie信息
setPath("/")
3.注意事项
- cookie大小有限制
- 创建cookie时候至少两部分内容,一个name,一个value
- 在默认的情况下,cookie是一个会话级别cookie
4.销毁cookie
1.创建一个和要销毁cookie项目名称的cookie new Cookie("name","");
2.设置cookie有效时长 setMaxAge(0)
3.设置有效路径 ,要和销毁的cookie的路径一致 setPath("/")
4.把cookie回写到浏览器中
3.session
session是服务器端的技术,在WEB开发中服务器可以为每个用户浏览器创建一个会话对象(session对象)
* 一个浏览器独占一个session对象(默认情况下)
1.创建和销毁
创建
getSession()可以创建session对象,名称是HttpSession
销毁
1. 非正常关闭服务器
2. session默认的过期时间
<session-config>
<session-timeout>30</session-timeout>
</session-config>
3. 调用session里面方法 invalidate()
//创建session
HttpSession session = request.getSession();
//调用销毁
session.invalidate();
//回到页面
response.sendRedirect("/day09-6/cart.jsp");