2012-08-10 92 views
0

我想如下設置會話值:值在JSP/Servlet會話是空

if (request.getParameter("page") != null) { 
         page = Integer.parseInt(request.getParameter("page").toString()); 
        } 
        if (request.getParameter("se_tempcardnumber") != null) { 
         tempcardnumber = request.getParameter("se_tempcardnumber").toString(); 
         session.setAttribute("session_tempcardnumber", tempcardnumber); 
        } 
        if (request.getParameter("se_empid") != null) { 
         empid = request.getParameter("se_empid").toString(); 
         session.setAttribute("session_empid", empid); 
        } 
        if (request.getParameter("se_issuedate") != null) { 
         issuedate = request.getParameter("se_issuedate").toString(); 
         session.setAttribute("session_issuedate",issuedate); 
        } 
        if (request.getParameter("se_cardstatus") != null) { 
         cardstatus = request.getParameter("se_cardstatus").toString(); 
         session.setAttribute("session_cardstatus", cardstatus); 
        } 

和我嘗試如下訪問會話值:

if(session.getAttribute("session_empid")!=null) { 
        session_empid =(String)session.getAttribute("session_empid"); 
        } 
       if(session.getAttribute("session_tempcardnumber")!=null) { 
        session_tempcardnumber =(String)session.getAttribute("session_tempcardnumber"); 
        } 
       if(session.getAttribute("session_issuedate")!=null) { 
        session_issuedate =(String)session.getAttribute("session_issuedate"); 
       } 
       if(session.getAttribute("session_cardstatus")!=null) { 
        session_cardstatus =(String)session.getAttribute("session_cardstatus"); 
        System.out.println("session_cardstatus : "+session_cardstatus); 
       } 

用於測試目的我爲System.out.println("session_cardstatus : "+session_cardstatus);單獨設置了值,並且打印了相同的內容。

它首次被打印出來,但是當它第二次出現時,雖然我不會在會話中刪除任何設置變量,

請告訴我如何去;

感謝和問候

回答

2

檢查其在會話

request.getRequestedSessionId()或session.getId()

設定值之前產生的會話ID