개발/Spring

세션에서 getAttribute를 통해 해당 유저의 정보를 얻어올 수 있는 이유

뽀글뽀글 개발자 2023. 8. 10. 12:51

Session.setAttribute("user", new SessionUser()); 를 사용해서 User A, B를 저장하면 

Session.getAttribute("user") 사용 시 어떻게 유저를 구분하여 정확히 값을 가져올 수 있을까?

 

세션은 서버와 클라이언트가 연결된 상태를 말한다.

즉 세션을 통해서 getAttribute를 한 순간부터 그 유저라는 것을 알고있는 것이다.

모든 session에서 key가 "user"인 값을 찾는 것이 요청을 보낸 Session에서 attribute가 "user"인 값을 찾는 것이다.

 

다음과 같이 서버에는 각 클라이언트와의 세션 정보가 있다.

이때 클라이언트가 session을 통해서 요청을 보내면 해당 session에서 유저를 찾아낼 수 있는 것이다.