标签:
他就是一个保存用户登录浏览器的一个保存数据的东西,客户浏览信息不回保存到数据库,会保存到这里
一: 构造Cookie对象
Cookie(java.lang.String name,java.lang.String value)
二设置cookie
void setPath(java.lang.String uri) : 设置cookie的有效访问路径
void setMaxAge(int expiry); 设置cookie的有效时间
void setValue(java.lang.String newValue):设置cookie的值
三:Cookie 原理
1) 服务器创建cookie 对象,吧回话数据存储到cookie对象中
new Cookie("name","value");
2 服务器发送cookie信息 到浏览器
response.addCookie(cookie);//以下列子就是 你完成案例代码完了打开你的 火狐或者谷歌浏览器嗯 f12 看源码的时候就能看到了 点控制台 切记
举列子: set-cookie:name=eric(隐藏发送了一个set-cookie名称的响应头)
3)浏览器得到服务器发送的cookie,然后保存在浏览器端
)4 服务器在下次访问服务器时,会待着cookie 信息
举列子:cookie:name=eric (隐藏带着 一个叫cookie 名称的请求头)
5: 服务器接收到 浏览器带来的cookie信息
request.getCookies();
以下是案例 他可以 用它当做 黑客 获取浏览器的个人信息 简单点说 就是 浏览器问你 是否记住密码 好方便下次你的登陆,在简单点说
你去淘宝 购物 每次 给你推荐让你 看到的 都是 你曾经浏览过的 买过的相关东西。
package jsp.com; import java.io.IOException; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.Cookie; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; /** * Servlet implementation class servat */ @WebServlet("/servat") public class servat extends HttpServlet { private static final long serialVersionUID = 1L; public servat() { super(); } protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { //1创建cookie对象 Cookie cookie=new Cookie("name", "eric"); //2把 cookie数据库发送到浏览器 //通过响应头发送:set-cookie名称) //推荐使用这种方法,避免手动发送cookie信息 response.addCookie(cookie); //3接收浏览器发送的cookie信息 Cookie[] cookies=request.getCookies(); //注意:判断null,否则是空指针 用键和值做 //用if和for语句 if(cookies!=null) { for(Cookie c:cookies) { String name=c.getName(); String value=c.getValue(); System.out.println(name+"="+value); } }else{ System.out.println("没有cookie数据"); } } }
cookie技术核心! 就是四个类的应用 搞懂这个基本上就把这个搞定了!
标签:
原文地址:http://www.cnblogs.com/w888/p/5223937.html