为什么每刷新一次就建一个新的session?

测试页代码如下:<%@pagelanguage="java"import="java.util.*"contentType="text/html;charset=gb23... 测试页代码如下:

<%@ page language="java" import="java.util.*" contentType="text/html;charset=gb2312"%>
<html>
<body>
<center>
<%=session.getId()%>
</center>
</body>
</html>

我一开始以为是因为没有数据写入session的原因,后来我按书上写了个简单的登陆界面,把登陆名定入session中,跳到另一个页面也读不到写入session的数据。发现sessionId是新的,cookie是null值。在网上寻找了很久也没找到可以解决的方法。

本人用的是IE8,把IE里的"替代cookie自动处理勾上,也勾上“总是允许会话 cookie”还是不行,请问有人知道是什么原因吗?
我试了保存数据入session的,最后得到的是NULL值,代码如下:
第一个网页,提交信息,就是通过<input...提交,没什么特别的,代码不贴了。
第二个网页,接收第一个网页填的登陆名,并写入session中:
第二个网页的代码:
<%@page contentType="text/html;charset=gb2312"%>
<%@page import="java.util.*"%>
<html>
<head><title>登陆验证</title></head>
<body>
<%String name=request.getParameter("user");
byte b[]=name.getBytes("ISO-8859-1");
name=new String(b);
session.setAttribute("name",name);
%>你的名字<%=(String)session.getAttribute("name")%>已经写入session了.(这里能正常读出name)
<a href="checksession.jsp">验证登陆</a>
</body>
</html>
第三个网页(checksession.jsp),就是用<%=(String)session.getAttribute("name")%>取出登陆名,结果却为null,问题就出现在这里,在第二个页面存进session的name取不出来了,不知与TOMCAT有没关?
使用session前加一句:session.setMaxInactiveInterval(30*60);也是返回null值。
非常感谢大家解答,我把tomcat7.0删了,装了个6.0的没问题了my god!
展开
 我来答
jicker1986
2010-10-07 · 超过52用户采纳过TA的回答
知道小有建树答主
回答量:162
采纳率:100%
帮助的人:104万
展开全部
就这个一个简单的JSP而言,sessionId肯定是会变的,因为你没有在控制中将session延续下去。
尝试着写个ACTION,然后跳转到原页面,sessionId就不会变了。 注意,刷新和跳转一个概念,但是,跳转里有数据,直接刷新带的请求里没有session相关的,对于tomcat而言,没有session的请求就无法弄到相应的进程里去,只能新建一个。
仅供下载01
2015-08-24 · TA获得超过368个赞
知道小有建树答主
回答量:343
采纳率:0%
帮助的人:152万
展开全部
网络或浏览器的问题。
在浏览器通过http协议提交时,会在消息头里面包含一个唯一性ID号,服务器端根据ID号,会自动识别并查询是否有对应的关联号,有则自动关联到对应的session,如果没有则创建新session。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
hzcl_sky
2010-10-13
知道答主
回答量:17
采纳率:0%
帮助的人:10.1万
展开全部
看看你 checksession.jsp这个页面时如何跳转过去的,是不是新开的一个页面还是通过连接或者提交跳转过去的。如果是新开的也没当然不属于同一个session了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
pc秋月
2010-10-08 · TA获得超过157个赞
知道答主
回答量:104
采纳率:0%
帮助的人:106万
展开全部
你的登录流程没看出有什么问题,会不会是Tomcat的失效时间问题?尝试在第2个页面中使用session前加一句:session.setMaxInactiveInterval(30*60);试试吧
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友6ec180f
2010-10-07 · TA获得超过615个赞
知道小有建树答主
回答量:400
采纳率:100%
帮助的人:239万
展开全部
刷新相当于一次请求吧
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式