웹사이트를 개발할 때 필수적으로 들어가는 로그인/로그아웃 기능을 Spring Security 라이브러리 대신 Session을 이용하여 구현해 보았습니다.
로그인 구현:
@PostMapping("/login")
public String memberLogin(Member loginMember, HttpServletRequest request) {
HttpSession session = request.getSession();
Member member = memberService.login(loginMember);
if(member != null) {
session.setAttribute("member", member);
return "redirect:/";
}
return "redirect:/member/login";
}
Login.jsp 구현:
<form id="login-form" action="/member/login" method="post">
<input type="email" id="email" name="email"/>
<input type="password" id="password" name="password"/>
<button type="submit">Login</button>
</form>
로그아웃 구현:
@GetMapping("/logout")
public String logout(HttpSession session) {
session.invalidate();
return "index";
}