我在LoginAction.java中用session保存用户登陆名,如下:
HttpServletRequest request = ServletActionContext.getRequest();
request.getSession().setAttribute("loginName", "123456789");
System.out.println(this.getSession().getAttribute("loginName"));//可以输出值
但是如果我在service(AppService.java)中取不到loginName的值,取值方法如下:
HttpServletRequest request = ServletActionContext.getRequest();
String usernameString=(String)request.getSession().getAttribute("loginName");
System.out.println(usernameString);//输出空值,及null为什么呢?
HttpServletRequest request = ServletActionContext.getRequest();
request.getSession().setAttribute("loginName", "123456789");
System.out.println(this.getSession().getAttribute("loginName"));//可以输出值
但是如果我在service(AppService.java)中取不到loginName的值,取值方法如下:
HttpServletRequest request = ServletActionContext.getRequest();
String usernameString=(String)request.getSession().getAttribute("loginName");
System.out.println(usernameString);//输出空值,及null为什么呢?
下面直接用session.serAttribute 因为request中间跳过一个页面就是失去值 所以直接用session
还不如直接
HttpSession session = request.getSession();
session.setAttribute("webUserName", "123456789");
但是这样还是无法在service层取值的