전체 흐름 요약

[요청]   "/farmStory/user/logout.do" (GET)
   ↓
[LogoutController]
   ↓
[세션 무효화 (invalidate)]
   ↓
[로그인 페이지로 리다이렉트 → login.do?result=101]
   ↓
[login.jsp에서 JavaScript alert("정상적으로 로그아웃 되었습니다.")]


정리

항목 예시
페이지/기능명 로그아웃 기능
사용 기술 JSP, Servlet, Session
주요 흐름 Controller → Session invalidate → redirect
클라이언트 처리 JS alert 메시지 (result=101)
설계 의도 세션을 초기화하여 사용자 로그아웃 처리

[1] LogoutController.java — 로그아웃 컨트롤러

@WebServlet("/user/logout.do")
public class LogoutController extends HttpServlet {

	private static final long serialVersionUID = 2267721817036680982L;

	@Override
	protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {

		// 세션 해제
		HttpSession session = req.getSession();
		session.removeAttribute("sessUser");
		session.invalidate();

		// 로그인 페이지로 리다이렉트 (로그아웃 알림용 result 파라미터 포함)
		resp.sendRedirect("/farmStory/user/login.do?result=101");
	}
}

[2] login.jsp — 로그아웃 메시지 처리

<script>
	const result = ${result};
	if(result == 100){
		alert('로그인 실패 했습니다.\n아이디, 비번을 다시 확인하세요.');
	}else if(result == 101){
		alert('정상적으로 로그아웃 되었습니다.');
	}
</script>

부가 설명