问题是什么?有哪些技术?如何解决?
1. Cookie
1)完成回话跟踪的一种机制:采用的是在客户端保存Http状态信息的方案
2)Cookie是在浏览器访问WEB服务器的某个资源时,由WEB服务器在HTTP响应消息头附带传送给浏览器的一个小文本文件。
3)一旦WEB浏览器保存了某个Cookie,那么它在以后每次访问该WEB服务器时,都会在HTTP请求头中将这个Cookie回传给WEB服务器。
4)底层实现原理:WEB服务器通过在HTTP响应消息中增加Set-Cookie响应头字段将Cookie信息发送给浏览器,浏览器则通过在HTTP请求消息总增加Cookie请求头字段将Cookie回传给WEB服务器。
2.Cookie相关的API:
1)向客户端浏览器写入Cookie //1.创建一个Cookie对象 Cookie cookie = new Cookie(name,“”shindo“”); //2.setMaxAge:设置Cookie的最大时效,以秒为单位,若为0,表示立即删除该Cookie, //若为负数,表示不存储该Cookie,若为正数,表示该Cookie的存储时间。 cookie.setMaxAge(30); //3.设置Cookie的作用范围:可以作用当前目录和当前目录的子目录,但不能作用于当前目录的上一级目录。 cookie.setPath(request.getContextPath()); //4.调用response的一个方法把Cookie传给客户端 response.addCookie(cookie); 2)从浏览器读取Cookie //1.获取Cookie Cookie[] cookies = request.getCookies(); if(cookies != null && cookies.lenth > 0){ for(){ //2.获取Cookiede name 和value out.print(cookie.getName() + ":" + cookie.getValue()); out.print("<br>"); } }
3.会话cookie和持久cookie
1)如果不设置过期时间,则表示这个cookie生命周期为浏览器会话期间,只要关闭浏览器窗口,cookie就消失了。这种生命期为浏览器会话期的cookie被称为会话cookie。会话cookie一般不保存在硬盘上而是保存在内存里。
2)如果设置了过期时间,浏览器就会把cookie保存到硬盘上,关闭后再次打开浏览器,这些cookie依然有效直到超过设定的过期时间。
4.使用cookie原理简单实现:自动登录,显示浏览过的商品信息。