Struts2 框架下 session 读出来为null

Posted Adding

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Struts2 框架下 session 读出来为null相关的知识,希望对你有一定的参考价值。

我用的strust2框架,开始的时候这么写的:

在 登陆函数中(注释部分):

public String dealerLogin(){
        EntityInfo entityinfo=dealerservice.dealerLogin(super.account,super.password);
           if(entityinfo!=null){
/*             ActionContext ac = ActionContext.getContext();我开始用的这种方式写入到session中
               ac.getSession().put(KeyConstant.MANAGER,entityinfo); */
               ServletActionContext.getRequest().getSession().setAttribute(KeyConstant.MANAGER,entityinfo);
               return "dealertlogin";
           }
           else{
               return "false";
           }
    }

用的时候的函数:

public String addAllMachCode(){
        String[] machinearrs=machinearr.split(";");
        int dealerId=0;
/*        HttpServletRequest request=ServletActionContext.getRequest();
        HttpSession session=request.getSession();
        EntityInfo entityinfo=(EntityInfo) session.getAttribute(KeyConstant.MANAGER);*/这里读出来  entityinfo是null
        EntityInfo entityinfo= (EntityInfo) ActionContext.getContext().getSession().get(KeyConstant.MANAGER);
        Dealer dealer= entityinfo.getDealer();
        dealerId=dealer.getDEALER_ID();
        for (String machinecode :machinearrs) {
            
            addAMachCode(machinecode,dealerId);
        }
        return SUCCESS;
    }

这到底是为什么了:
提取出来 第一种: 写入 ActionContext ac = ActionContext.getContext();
               ac.getSession().put(KeyConstant.MANAGER,entityinfo)
          读取: HttpServletRequest request=ServletActionContext.getRequest();
               HttpSession session=request.getSession();
              EntityInfo entityinfo=(EntityInfo) session.getAttribute(KeyConstant.MANAGER);
      第二种:写入   ServletActionContext.getRequest().getSession().setAttribute(KeyConstant.MANAGER,entityinfo);
          读取: EntityInfo entityinfo= (EntityInfo) ActionContext.getContext().getSession().get(KeyConstant.MANAGER);
有没有人解释下 为什么  

 

以上是关于Struts2 框架下 session 读出来为null的主要内容,如果未能解决你的问题,请参考以下文章

SSH学习-Struts2中的session

???Struts2框架03 session的使用登录逻辑session工作原理

Struts2 (下)

碎片化 | 第四阶段-38-Struts2登录session对象封装-视频

碎片化 | 第四阶段-39-Struts2中session对象梳理-视频

struts2下s:iterator取不出值