로그인 구현하기
by 볼빵빵오춘기login.jsp
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>index</title>
</head>
<body>
<form action="/member/login" method="post">
<input type="text" name="memberEmail" placeholder="이메일">
<input type="text" name="memberPassword" placeholder="비밀번호">
<input type="submit" value="로그인">
</form>
</body>
</html>
Controller
- 로그인을 하면 로그인 정보가 따라다녀야 하므로 매개변수에 HttpSession 을 넣어준다.
- 로그인 성공하면 session에 로그인 사용자의 email을 넣어준다.
@GetMapping("/login")
public String loginForm(){
return "login";
}
@PostMapping("/login")
public String login(@ModelAttribute MemberDTO memberDTO, HttpSession session){
boolean loginResult = memberService.login(memberDTO);
if(loginResult) {
session.setAttribute("loginEmail", memberDTO.getMemberEmail());
return "main";
}else{
return "login";
}
}
Service
public boolean login(MemberDTO memberDTO) {
MemberDTO loginMember = memberRepository.login(memberDTO);
if(loginMember != null){
return true;
}else{
return false;
}
}
Repository
public MemberDTO login(MemberDTO memberDTO){
return sql.selectOne("Member.login",memberDTO);
}
Mapper.xml
select를 쓸 때는 resultType이 있어야한다.
<select id="login" parameterType="member" resultType="member">
select * from member_table where memberEmail = #{memberEmail} and memberPassword = #{memberPassword}
</select>
main.jsp
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>main</title>
</head>
<body>
<h2>${sessionScope.loginEmail} 님 환영합니다.</h2>
<button onclick="update()">내정보 수정하기</button>
<button onclick="logout()">로그아웃</button>
</body>
<script>
const update = () => {
location.href = "/member/update";
}
const logout = () => {
location.href = "/member/logout";
}
</script>
</html>
'강의 따라하기 > springframework_setting' 카테고리의 다른 글
회원정보 상세조회하기 (0) | 2024.10.22 |
---|---|
회원목록 출력하기 (0) | 2024.10.22 |
회원가입 완성하기 (0) | 2024.10.22 |
회원가입 시작하기 (0) | 2024.10.22 |
프레임워크 프로젝트 만들기 & Tomcat 세팅 (0) | 2024.10.16 |
블로그의 정보
Hello 춘기's world
볼빵빵오춘기