메모

*HttpSession을 전역 변수로 사용하는 것을 권장하지 않는 이유

Song hyun 2024. 10. 17. 10:45
728x90
반응형

*HttpSession을 전역 변수로 사용하는 것을 권장하지 않는 이유

 

HttpSession을 멤버 변수로 선언하는 것은 좋은 선택이 아니다.

 

ex: 각각의 Controller 클래스는 딱 1개만 존재하는데, 그럼에도 우리가 웹사이트를 동시에 사용할 수 있는 건 멀티스레딩 덕분! -> SharedResource(=공유된 자원) 개념 : 모든 사용자가 동일한 자원을 사용!

 

=> 멤버 변수보다는 파라미터에 HttpSession을 주입해 사용하도록 하자

 


 

*Spring MVC 컨트롤러는 싱글톤으로 관리되기 때문에, HttpSession을 멤버필드로 주입받으면 여러 요청들 사이에서 공유될 수 있다!

=> 메서드 파라미터로 HttpSession을 받아 사용하자!

=> 각 요청마다 개별적인 세션 객체에 접근할 수 있다.

728x90
반응형