jsp页面获取session的问题

来源:百度知道 编辑:UC知道 时间:2024/05/16 07:38:59
我在jsp页面存上一个session,本页面还可以取出值来.
但是一刷新,或者打开新的页面就取不出值来了.

奇怪的是,我测试另一个程序时候
在jsp页面存上一个session,本页面可以取出值来,刷新或打开新页面值能取出来了.

帮我看看这是怎么回事?
回答者:匿名 2009-9-10 00:07:
1.并非cookie禁用
用IE6,火狐试过

测试另一个程序,是指2个不同的程序

2.在存session那行前面写一个取session的代码,刷新页面的时候值为null

在存session那行后面写一个取session的代码,未刷新前可以取出来值且不为null

session是在服务器端的,
cookie是在客户端的
1、问一下楼主使用的服务器是什么,tomcat?,版本多少,我看了一下,session跟服务器的维护机制有关
2、在jsp页面上有一个属性session,它默认是true,看看楼主是不是把它设置成了false,这个属性是指此页面使用不使用session,如果置为false那么就有可能产生楼主的问题

问题补充回答:
请问楼主是否设置了
response.setDateHeader("Expires",0);
这样设置可能会是session过期
你去掉试一试
如果没有的话
希望能把代码给我看一下

Jsp中获取Session的方法:
session是jsp的内置对象,所以可以直接写在jsp的
<%
//把b放到session里,命名为a
session.setAttribute("a", b);
//从session里把a拿出来,并赋值给M
String M = session.getAttribute(“a”).toString();
%>

JSTL标签获取Session:

[java] view plaincopyprint?
session.setAttribute("age","123");
${ sessionScope.age} 在页面上显示的就是123了

sessionScope指的是session的范围,类似还有requestScope,pageScope,contextScope
然后后面的age表示的是set属性时的key值

Jsp中获取Session:

[java] view plaincopyprint?
session是jsp的内置对象,所以你可以直接写在jsp的
<%
session.set