如何设置jsp中cookie的过期时间 20

设计一个JSP页面完成如下要求:(1)使用cookie技术识别用户是否访问过本网页(用客户端IP地址识别用户,设置cookie的最大保存时间为10分钟,cookie中需要... 设计一个JSP页面完成如下要求:

(1) 使用cookie技术识别用户是否访问过本网页(用客户端IP地址识别用户,设置cookie的最大保存时间为10分钟,cookie中需要保存用户IP地址);

(2) 如果用户在10分钟内重复访问本网页,则显示“欢迎您再次访问本网页,上次登录IP地址为xxx.xxx.xxx.xxx”;否则显示“欢迎您首次访问本网页,您的IP地址为xxx.xxx.xxx.xxx”。

提示:

(1)获取客户端IP地址可以使用request对象的getRemoteAddr()方法;

(2)cookie操作可以使用JSP内置对象Cookie、request和response中关于cookie的相关方法
展开
 我来答
千锋教育
2015-12-08 · 做真实的自己 用良心做教育
千锋教育
千锋教育专注HTML5大前端、JavaEE、Python、人工智能、UI&UE、云计算、全栈软件测试、大数据、物联网+嵌入式、Unity游戏开发、网络安全、互联网营销、Go语言等培训教育。
向TA提问
展开全部
1. dateadd法
1)将期限设置为当前日期后的第N天的0时0分0秒
Response.Cookies(“LastView”).Expires=dateadd(“d”,N,date)
2)将期限设置为当前日期后的第N月的同一天的0时0分0秒
Response.Cookies(“LastView”).Expires=dateadd(“m”,N,date)
3)将期限设置到当前时间后的第N天的该时该分该秒
Response.Cookies(“LastView”).Expires=dateadd(“d”,N,now)
4)将期限设置到当前时间后的第N+M天的该时该分该秒
Response.Cookies(“LastView”).Expires=dateadd(“d”,N,now+M)
5)将期限设置到当前时间后的第N月的该时该分该秒
Response.Cookies(“LastView”).Expires=dateadd(“m”,N,now)
6)将期限设置到当前时间后的第N月的同一日后的第M天的该时该分该秒
Response.Cookies(“LastView”).Expires=dateadd(“m”,N,now+M)

2. 确定日期法
1)将期限设置到某一日的0时0分0秒失效
举例:到2003年1月29日0时0分0秒失效
Response.Cookies(“LastView”).Expires=# 1/29/2003 #

Response.Cookies(“LastView”).Expires=# 2003/1/29 #

Response.Cookies(“LastView”).Expires=“January 29,2003”
2)将期限设置到某一日的某一时刻失效
举例:到2003年1月29日21时0分0秒失效
Response.Cookies(“LastView”).Expires = #2003/1/29 21:00:00#

Response.Cookies(“LastView”).Expires = #1/29/2003 21:00:00#

Response.Cookies(“LastView”).Expires = #January 29,2003 21:00:00#
其实,在这种方法中,用““ ””和“# #”的效果是一样的。例如
Response.Cookies(“LastView”).Expires=“January 29,2003”

Response.Cookies(“LastView”).Expires=# January 29,2003 # 的效果就是相同的。

3. date+ \now+ 法
这种方法主要结构为Date+数学式或now +数学式。通过简单的四则运算的方法,将Cookie 的失效时间设置到当前时间后的某一段时间内。这里的加号都表示在当前时间的基础上加上预设时间。
1)date+法
如将期限设置为当前日期后的第N天的0时0分0秒,我们可以使用上述已谈到过的方法也可以使用如下格式:
Response.Cookies(“LastView”).Expires=Date+N
date+法是一种比较死的方法。它和上述方法差别不是很大,完全可以由上述几种方法代替。下面介绍now+法,这是一种比较灵活的方法,它可以将失效时间准确地定位到当前时间后的任意一年、一月、一天、一小时、一分、一秒。
2)now+法
先举一个例子: Response.Cookies(“LastView”).Expires = now+1
这条语句的功能是:把Cookie的失效时间限制到1天后的同一时刻。这里的1代表1天,即24小时。由于now代表当前Web服务器的系统时间,包括年、月、日、时、分、秒,则该语句所表达得Cookie 的失效日期在明天的同一时、分、秒上。若改成now+2则表示此Cookie 的失效日期在两天后的同一时、分、秒上;now+30表示此Cookie 的失效日期在一个月后的同一时、分、秒上;now+30*2表示此Cookie 的失效日期在两个月后的同一时、分、秒上;now+365则表示此Cookie 的失效日期在一年后的同一时、分、秒上……
当把1分成24等份,即该语句变成: Response.Cookies(“LastView”).Expires = now+1/24则表示把Cookie的失效时间限制到一小时后。在此基础上,把1再分60等份,即把now+1/24改成 now+1/1440,则表示把Cookie的失效时间限制到一分钟后。这里的1440是由24*60得来。同理,要把Cookie的失效时间限制到十分钟后,则把程序变成Response.Cookies(“LastView”).Expires = now+10/1440;要把Cookie的失效时间限制到一秒钟后,则程序变成Response.Cookies(“LastView”).Expires = now+1/86400。当然,理论上把Cookie的失效时间限制到微秒级也是可以的。不过,那就没有什么实际意义了。另外,如果程序语句变成: Response.Cookies(“LastView”).Expires = now+1+1/1440则表示Cookie的失效时间为24小时零一分钟后。
超人影视娱乐
高粉答主

2015-09-08 · 闲来无事的影评人-关注我把
超人影视娱乐
采纳数:7757 获赞数:60595

向TA提问 私信TA
展开全部
<%@ page contentType="text/html;charset=gb2312" %>
<%
String ipAddr=null;
Cookie cookies[] = request.getCookies();
if (cookies != null) {
for (int i = 0; i < cookies.length; i++) {
if (cookies[i].getName().equals("ipAddr")){
ipAddr=cookies[i].getValue();
out.print("<script language=\"JavaScript\">alert(\"欢迎您再次访问本网页,上次登录IP地址为"+ipAddr+"\");</script>");
}
}
}
Cookie ipAddrCookie = new Cookie("ipAddr", "" + request.getRemoteAddr());
ipAddrCookie .setMaxAge(60 * 10); //设置Cookie有效期10分钟
response.addCookie(ipAddrCookie );
out.print("<script language=\"JavaScript\">alert(\"欢迎您首次访问本网页,您的IP地址为"+request.getRemoteAddr()+"\");</script>");

%>
追问:
还是存在问题啊,刷新之后,提示欢迎您首次光临本网页和欢迎您再次光临本网页

追答:
不好意思,上次太晚了就没有测试,这次应该没问题了
<%@ page contentType="text/html;charset=gb2312" %>
<%
String ipAddr=null;
Cookie cookies[] = request.getCookies();
if (cookies != null) {
for (int i = 0; i < cookies.length; i++) {
if (cookies[i].getName().equals("ipAddr")){
ipAddr=cookies[i].getValue();
out.print("<script language=\"JavaScript\">alert(\"欢迎您再次访问本网页,上次登录IP地址为"+ipAddr+"\");</script>");
return;
}
Cookie ipAddrCookie = new Cookie("ipAddr", "" + request.getRemoteAddr());
ipAddrCookie .setMaxAge(60 * 10); //设置Cookie有效期10分钟
response.addCookie(ipAddrCookie );
out.print("<script language=\"JavaScript\">alert(\"欢迎您首次访问本网页,您的IP地址为"+request.getRemoteAddr()+"\");</script>");
return;
}
}
%>
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
wo317458719
2011-06-21 · TA获得超过105个赞
知道答主
回答量:35
采纳率:0%
帮助的人:47.5万
展开全部
<%@ page contentType="text/html;charset=gb2312" %>
<%
String ipAddr=null;
Cookie cookies[] = request.getCookies();
if (cookies != null) {
for (int i = 0; i < cookies.length; i++) {
if (cookies[i].getName().equals("ipAddr")){
ipAddr=cookies[i].getValue();
out.print("<script language=\"JavaScript\">alert(\"欢迎您再次访问本网页,上次登录IP地址为"+ipAddr+"\");</script>");
}
}
}
Cookie ipAddrCookie = new Cookie("ipAddr", "" + request.getRemoteAddr());
ipAddrCookie .setMaxAge(60 * 10); //设置Cookie有效期10分钟
response.addCookie(ipAddrCookie );
out.print("<script language=\"JavaScript\">alert(\"欢迎您首次访问本网页,您的IP地址为"+request.getRemoteAddr()+"\");</script>");

%>
追问
还是存在问题啊,刷新之后,提示欢迎您首次光临本网页和欢迎您再次光临本网页
追答
不好意思,上次太晚了就没有测试,这次应该没问题了

alert(\"欢迎您再次访问本网页,上次登录IP地址为"+ipAddr+"\");");
return;
}
Cookie ipAddrCookie = new Cookie("ipAddr", "" + request.getRemoteAddr());
ipAddrCookie .setMaxAge(60 * 10); //设置Cookie有效期10分钟
response.addCookie(ipAddrCookie );
out.print("alert(\"欢迎您首次访问本网页,您的IP地址为"+request.getRemoteAddr()+"\");");
return;
}
}
%>
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
牛明志qF
2011-06-23 · TA获得超过164个赞
知道答主
回答量:176
采纳率:0%
帮助的人:157万
展开全部
HttpSession类的setMaxInactiveInterval(int interval)方法用于设置允许会话保持不活动状态的时间(以秒为单位)
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式