Java Spring session.getAttribute(“test”)为null

时间:2017-06-24 12:12:24

标签: java spring httpsession

我有HttpSession的问题,我没有它 我想我忘了Annotation或类似的东西 我是否需要在任何地方进行session.create()?

在UserController中:

@Controller
public UserController{
    public ResponseHttp connection(User userSent, HttpSession session) {
        ResponseHttp responseHttp = new ResponseHttp();       

        //function to check login/mdp 
            if (check) {
                responseHttp.setSuccess(true);
                responseHttp.setMessage("Connection success");
                //some code 
               //
               //
               session.setAttribute("userId", 1); // this is an example
               System.out.println(session.getAttribute("userId")) // return 1
               return responseHttp;
            }
        }

        responseHttp.setSuccess(false);
        responseHttp.setMessage("Connection failed");

        return responseHttp;
    }
}

在另一个控制器中:

@Controller
public class MyController{
    public void test(HttpSession session){
        System.out.println(session.getAttribute("userId")) ; // return null
    }
}

更新25-06-2017

我试图在两个控制器中注入@HttpSession 在连接时,我会检查会话:

if(httpSession.isNew()){
    System.out.println("New") // ok return new !
    System.out.println(httpSession.getId()); // A87AC018FD8DDA33B023FAA6C1C2D71C
}

在另一个控制器中

if(httpSession.isNew()){
    System.out.println("New") //  it's returning new again
    System.out.println(httpSession.getId()); //  2FE08FB68EA53F7FEBB8143CFEE6A9EB
}else{
    System.our.println("not new")
}

问题:为什么不是同一个会话?

0 个答案:

没有答案