日期:2014-05-17  浏览次数:20624 次

jsp session问题
问题是这样的
我从a进入B,向B传送了一个用户名(admin)
我再从B进入c,操作完毕,回到B后,用户名(admin)变为null了。
请大师们指点一下
------最佳解决方案--------------------
A
request.getSession().setAttribute("admin","admin");//这里是对象还是字符串?
request.getRequestDispatcher("b的uri").forward(req,res);
B
admin=request.getSession().getAttribute("admin");
request.getSession().setAttribute("admin","admin");
request.getRequestDispatcher("c的uri").forward(req,res);
c
admin=request.getSession().getAttribute("admin");
request.getSession().setAttribute("admin","admin");
request.getRequestDispatcher("b的uri").forward(req,res);
大概是这样的吧,可是我很想知道你在B中是怎么分别获取A中的admin和C中的admin的;
这个页面你是怎么组织的!!!!
是不是你的admin是个对象然后你存的时候把它存成了字符串!
------其他解决方案--------------------
首先获取text值在A中存入session
String admin = request.getParameter("admin");
HttpSession session = request.getSession(true);
session.setAttribute("admin", admin );

然后在B中调用
HttpSession session = request.getSession(true);
String admin = session.getAttribute("admin");
String admin 就为text的值

C中如果要用同上了  
在web.xml中设置session时效
<session-config> 

    <session-timeout>15</session-timeout> 

</session-config>
这里15 就是15分钟
------其他解决方案--------------------
赞同12楼的。
你还不如在A里存session,因为估计你从c调回b的时候又去执行了设置session的方法,而你又没有从C传回值来所以把之前的值也替换成null了。
------其他解决方案--------------------
Session是浏览器相关的。在同一个浏览器里面session是相同的(没有阻止COOKIE的情况下).session会将session的id保存在COOKIE里。
------其他解决方案--------------------
你敢说清楚一点么?ABC是页面还是什么?
你有把需要的东西放在session?
------其他解决方案--------------------
把数据保存到 session 里面,用的时候取出来,LZ 应该是不了解 request 和 session 的区别。
------其他解决方案--------------------
我在a页面将admin放入session中,从a进入B,在B中获取了admin,再从B进入c,从c返回B,admin变成了null
------其他解决方案--------------------
引用:
我在a页面将admin放入session中,从a进入B,在B中获取了admin,再从B进入c,从c返回B,admin变成了null

你的session只有三十秒
------其他解决方案--------------------
我从a进入B将admin传递给B,在B中获取了admin,将admin放入session中,再从B进入c,从c返回B,admin变成了null
------其他解决方案--------------------
刚才逻辑有误,抱歉

------其他解决方案--------------------
引用:
刚才逻辑有误,抱歉

结贴 求分
------其他解决方案--------------------
这样,哪位高手按照我的逻辑简单写一下,让我学习学习,分我高给
------其他解决方案--------------------
对象放在session
不管 你什么逻辑  时间没到,session就一直存在
不管页面怎么跳
------其他解决方案--------------------
我是这样的,在A中我用text传递一个值admin,在B中显示,当我从B进入C,再从C返回B后,admin的值不变。可能是我的表述有问题,谢谢大家了
------其他解决方案--------------------
打击一下楼主同学,你的问题看起来应该没什么难度,上面的回复八成就给你解决了。如果没有解决,请重新认真组织语言把你的问题正确描述。提问也是技术活诶
------其他解决方案--------------------
引用: