[MVC2 게시판] 2. 로그인
2016. 11. 25. 16:52ㆍProgramming/JSP
<배운 것>
1) MVC 모델2 구현 방식
2) <c:choose> 활용
3) 로그인/로그아웃 처리법
<header view>
<header.jsp>
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 | <div id="logo"> <img src="./img/logo.PNG"> </div> <div id="loginForm"> <h2 style="color: red">${param.msg}</h2> <c:choose> <c:when test="${sessionScope.login ne 1}"> <form action="memLogin.do" method="post"> <p> <label for="uId">I D : </label> <input type="text" name="id" value=""> </p> <p> <label for="uPwd">pwd :</label> <input type="password" id="uPwd" name="pwd" size="20" value=""> </p> <input type ="submit" value="로그인"> </form> <p><a href="memAddForm.do">회원가입</a></p> </c:when> <c:when test="${sessionScope.login eq 1}"> <p>${sessionScope.id}님 환영합니다!</p> <p><a href="memLogout.do">로그아웃</a> </c:when> </c:choose> </div> <div id="header"> <ul class="menu_bar"> <li><a href="boardList.do">게시판 리스트</a></li> <li><a href="memList.do">회원 관리</a></li> <li><a href="memList.do">빈 페이지</a></li> </ul> </div> | cs |
<c:when test="${sessionScope.login ne 1}">
ID 중복검사 결과 로그인 실패시
<c:when test="${sessionScope.login eq 1}">
로그인 성공시
<header 안 CSS>
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 | <style type="text/css"> #logo{ width: 10rem; height: 6rem; } #header>ul.menu_bar>li { background: white; display: inline-block; width: 30%; /* 전체 넓이의 3할 차지 */ text-align: center; margin-top: 12rem; padding-top: 1rem; padding-bottom: 1rem; font-size: 2rem; border: 5px solid black; } #header>ul.menu_bar>li:HOVER{ background: pink; } #loginForm{ background: white; padding-left: 10px; padding-bottom: 10px; border: 5px solid black; width: 30%; position:absolute; top:5rem; right:3rem; } </style> | cs |
<MemberLoginController>
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 | @WebServlet("/memLogin.do") public class MemberLoginController extends HttpServlet { protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { int login = 0; HttpSession session = request.getSession(); String context=request.getContextPath(); response.setContentType("text/html; charset=UTF-8"); MemberDao dao = new MemberDao(); Member mem = new Member(); mem.setId(request.getParameter("id")); mem.setPwd(request.getParameter("pwd")); login = dao.login(mem); System.out.println(login); if(login>0){ System.out.println("로그인 성공"); session.setAttribute("login",1); session.setAttribute("id", mem.getId()); session.setAttribute("name", mem.getName()); response.sendRedirect(context+"/memList.do"); }else{ System.out.println("로그인 실패"); session.setAttribute("login",0); response.sendRedirect(context+"/memList.do?msg=login failed"); } } } | cs |
<MemberDao.selectId() : ID 중복 검사>
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | public boolean selectId(String id) { String sql = "SELECT * FROM MEMBER WHERE id=?"; boolean idFlag = false; try{ conn = DBManager.getConnection(); pstmt = conn.prepareStatement(sql); pstmt.setString(1, id); rs = pstmt.executeQuery(); if(rs.next()){ idFlag = true; } }catch(SQLException e){e.printStackTrace(); } return idFlag; } | cs |
<MemberLogoutController>
1 2 3 4 5 6 7 8 | @WebServlet("/memLogout.do") public class MemberLogoutController extends HttpServlet { protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { HttpSession session = request.getSession(); session.invalidate(); response.sendRedirect("memList.do"); } } | cs |
'Programming > JSP' 카테고리의 다른 글
[MVC2 게시판] 4. 페이징(Paging) (0) | 2016.11.28 |
---|---|
[MVC2 게시판] 3. 회원관리 (0) | 2016.11.25 |
[MVC2 게시판] 1. 개요 (0) | 2016.11.21 |
JSTL 태그 part2 (0) | 2016.11.09 |
MVC 모델 (0) | 2016.11.07 |