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是个对象然后你存的时候把它存成了字符串!
你有把需要的东西放在session?
不管 你什么逻辑 时间没到,session就一直存在
不管页面怎么跳
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是个对象然后你存的时候把它存成了字符串!
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分钟
你还不如在A里存session,因为估计你从c调回b的时候又去执行了设置session的方法,而你又没有从C传回值来所以把之前的值也替换成null了。
呃 ,++
楼主了解下JSP四大作用域吧