Flaming Soccer ball
통합

54일차-1 22.12.06 홈페이지 로그아웃

leo lee 2022. 12. 6.
반응형

기존 로그인 화면에 이은 로그아웃 기능을 추가 하였다.

 <!--조건에 따른 표시  -->
                    <c:if test="${sessionScope.user_id==null}">
                    <li>
                        <a href="${pageContext.request.contextPath}/user/user_login.user">LOGIN</a>
                    </li>
                    <li>
                        <a href="${pageContext.request.contextPath}/user/user_join.user" style="color:red">JOIN</a>
                    </li>
                    </c:if>
                    
                    <c:if test="${sessionScope.user_id!=null}">
                    <li>
                        <a href="${pageContext.request.contextPath}/user/user_logout.user">LOGOUT</a>
                    </li>
                    <li>
                        <a href="${pageContext.request.contextPath}/user/user_mypage.user" >MYPAGE</a>
                    </li>
                  	</c:if>

기존 로그인 전 화면은 1번째 사진과 같지만 로그인 후 화면은 2번째 사진과 같이 화면이 나오게 처리할 수 있다. 

로그아웃을 처리 해주는 컨트롤러의 case문이다.

여기서 가장 중요한 것은 로그인을 하면서 session으로 받았더 user_id와 user_name 을 session.invalidate();를 통해서 초기화를 해주는 것이다.

 

세션을 초기화 한 후에 메인 페이지로 나가게 할 수 있다.

 

아래 코드에서 주석처리가 된 부분을 보면 /JSPWeb/index.main 이 주소인데 이 경우는 path의 경로가 달라질 수 있기 때문에 path를 통해서 받아준 경로로 설정해 줄 수 있다.

	
		case "/user/user_logout.user"://로그아웃
			HttpSession session = request.getSession();
			session.invalidate();//세션 무효화
			
			//response.sendRedirect("/JSPWeb/index.main");//메인으로
			response.sendRedirect(path + "/index.main");
			
			break;

 

 

로그아웃을 누른다면 아래와 같이 다시 메인으로 돌아가게 된다.

반응형

댓글