定义:是服务端给客户端,存储在客户端的一份小数据. Cookie数据由服务器生成,Cookie是保存在客户端的纯文本文件。
为什么使用Cookie:
原因:http请求是无状态的,客户端与服务端的通讯也是无状态的。即,客户端在第二次的访问时,服务端不知道此客户端是否访问过。
为了更好的人机交互,所以出现了Cookie,用于自动登录。但公司可以用此获取用户数据/习惯【大数据】。
注意:Cookie有大小和个数限制。一个web工程能够存20个Cookie,一个浏览器总共可以存300个Cookie,Cookie大小不超过4KB
Cookie的使用:
1,直接new一个Cookie
/ /创建一个Cookie
Cookie cookie = new Cookie("aa","bb");
//给响应添加Cookie
response.addCookie(cookie);
//获取客户端随请求返回的Cookie
Cookie[] cookies = request.getCookie();
if(cookie != null){
for(cookie c:cookies){
String name = c.getName();
System.out.println(name);
}
}
2,设置Cookie存在时间
Cookie.setMaxAge();
时间以秒为单位;
-1表示Cookie在浏览器关闭后失效;(Cookie默认是此值)
正数表示Cookie存在多少秒
3,Cookie.setDomain(“域名”);
此方法表示: 只有访问指定的域名时,才会带Cookie
4, Cookie.setPath(“url”);
此方法表示:访问该域名下的指定路径时,才会带Cookie
System.currentTimeMillis()
Java中System.currentTimeMillis() 返回的是从GMT 1970年1月1日00:00:00开始到现在的毫秒数(long型)。
注:如果仅仅是获取当期时间,下面两条输出语句,输出的时间是一样的
System.out.println(new Date(System.currentTimeMillis()));
System.out.println(new Date());