본문 바로가기
Framework & Library/Spring Boot

[Spring Boot] : 서블릿 HTTP 세션을 활용해 로그인 처리하기(2)

by 오주현 2022. 2. 22.
반응형

@SessionAttribute를 통해 스프링에서 세션을 조금 더 편리하게 사용할 수도 있다.

 

이미 로그인 된 사용자를 찾을 때는 다음과 같이 사용하면 된다.

 

@SessionAttribute = "loginMember", required=false) Member loginMember

이런 형식으로 사용하면 되는데 강의에서 활용한 것은 아래와 같다.

 

public String homeLoginV3Spring(
 @SessionAttribute(name = SessionConst.LOGIN_MEMBER, required = false) Member loginMember,
									 Model model) {

전에 만들어둔 상수를 넣어준다.

 

세션에 회원 데이터가 없으면 home
if (loginMember == null) {
 return "home";
 }
 //세션이 유지되면 로그인으로 이동
 model.addAttribute("member", loginMember);
 return "loginHome";

세션을 찾고 데이터를 찾는 과정을 생략할 수 있다.

 

TrackingModes에 대해서도 배웠다.

 

로그인을 하면 jsessionid=와 같이 UUID 랜덤값 같은 결과가 나왔는데 이 부분을 없애주는 것이다.

 

server.servlet.session.tracking-modes=cookie

application.properties에 넣어주면 된다.

 

이렇게 하면 URL 전달 방식을 끄고 항상 쿠키를 통해서만 세션을 유지하게 된다. 그리고 더 이상 URL에 jessionid가 노출되지 않게 된다.


스프링 MVC 2편 - 백엔드 웹 개발 활용 기술을 참고하여 공부하였습니다.

반응형

댓글