🎯 mypage ( 로그인 이후의 작업이기 때문에 로그인 여부를 확인해야 된다. )
💡 로그인 여부 확인 방법
HttpSession session = request.getSession();
MemberDTO dto = (MemberDTO)session.getAttribute("login");
if(dto!=null) {
//로그인 한 경우
}else {
// 로그인 안했거나 했는데 time-out된 경우
}
✅ MyPageServlet 생성 후 작성
✅ top.jsp의 mypage에 MyPageServlet url 추가해주기
✅ MyPageServlet에 로그인 여부 확인 코드 작성 => login 키를 dto에 담는다.
✅ 로그인 여부에 따라 다음 페이지 결정해주는 nextPage 생성
✅ 각각 어디로 넘어갈건지 경로 작성
- 로그인 한 경우 (dto != null) => mypage.jsp 로
- 로그인 실패한 경우 (else) => member/checkLogin.jsp 로
✅ session에 MemberDTO를 저장했지만, 필요로 하는 데이터가 다 session에 없을 수도 있기 때문에 DB에서 가져와야한다.
✅ MemberMapper.xml 에 select문 작성
받아온 userid가 일치하면 member테이블에서 userid, passwd, ... 등을 가져와 MemberDTO에 담아준다.
✅ MemberDAO
userid에 해당하는 값들을 다 뽑아내서 dto에 담고 dto 반환
✅ MemberService
✅ MemberServiceImpl
DAO 연동
✅ MyPageServlet
- 서비스 연동
- userid를 서비스 거쳐서 DAO에 전달하고 반환
- session에 저장
- session에 저장했기 때문에 리다이렉트 (요청위임)
✅ WebContent 아래에 mypage.jsp 생성
✅ member/mypage.jsp 를 include 한다.
✅ member/mypage.jsp 생성
✅ form 작성
✅ value값 추가
🧨 이슈 발생
011 으로 가입했는데
마이페이지에서는 무조건 010으로 나오는 이슈 발생
💡 해결
- taglib을 추가해주고
- selected 와 <c:if> 문을 활용해 해결
💻 결과
'Project Shop_Mini_Mall > [SERVLET&JSP]' 카테고리의 다른 글
12. 상품 자세히 보기 (0) | 2023.08.23 |
---|---|
11. 상품 목록 구현 (0) | 2023.08.23 |
9. 로그아웃 (0) | 2023.08.23 |
8. 로그인 (0) | 2023.08.22 |
7. 로그인 화면보기 (0) | 2023.08.22 |