在平时我们登陆一个网站的时候,有些网站有一个选项“两个星期不用登陆”,甚至是90天不用登陆,以前觉得很郁闷,他们怎么就这么神迷,居然能够不用登陆就能知道是我在登陆。今天看一下有关Cookie的知识,发现原来是利用到了Cookie,把我的登陆信息直接就写在我的电脑之下,下一次的上网站的时候,直接就能从我的电脑获取到我的用户名与密码。
下面是我写的一个简单的Cookie的使用,作用是记录我上一次登陆的时间,把当前登陆时间,与上一次登陆时间都显示出来。每一次显示是没有上一次登陆时间的,刷新一次就有了。
<%@page contentType="text/html" pageEncoding="gb2312"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>JSP Page</title>
</head>
<body>
<%
String date = new java.util.Date().toString();
out.print("本次访问的时间:"+date+"<br>");
Cookie[] cookies = request.getCookies();
Cookie c = null;
if(cookies != null){
for(int i= 0;i < cookies.length;i ++){
c = cookies[i];
String name = c.getName();
if(name.equals("Time")){
out.print("上一次访问的时间是:"+c.getValue());
c.setValue(date);
response.addCookie(c);
}
}
}else{
Cookie newCookie=new Cookie("Time", date);
newCookie.setMaxAge(30*60); // 设置有效时间,
response.addCookie(newCookie);
}
%>
</body>
</html>
不过到现在我都有一个疑问,今天其它人写了一个例子,在例子里,是不用设置有效时间,也能把Cookie写到本地,但是我写的时候就怎么也写不了,只有在加了有效时间的时候才能成功!