- 2019/09/11 6. 로그인2019년 11월 22일
- 조별하
- 작성자
- 2019.11.22.:51
로그인
1. 로그인 Form 회원 테이블 만들기&데이터 insert
id 를 primary key로 지정하였다
CREATE TABLE member ( id VARCHAR(10) NOT NULL, -- 아이디, 중복 안됨, 레코드를 구분하는 컬럼 passwd VARCHAR(10) NOT NULL, -- 패스워드 mname VARCHAR(20) NOT NULL, -- 성명 tel VARCHAR(14) NULL, -- 전화번호 email VARCHAR(50) NOT NULL UNIQUE, -- 전자우편 주소, 중복 안됨 zipcode VARCHAR(7) NULL, -- 우편번호, 101-101 address1 VARCHAR(255) NULL, -- 주소 1 address2 VARCHAR(255) NULL, -- 주소 2(나머지주소) job VARCHAR(20) NOT NULL, -- 직업 mlevel CHAR(2) NOT NULL, -- 회원 등급, A1, B1, C1, D1, E1, F1 mdate DATE NOT NULL, -- 가입일 PRIMARY KEY (id) ); insert into member(id,passwd,mname,tel,email,zipcode,address1,address2,job,mlevel,mdate) values ('soldesk','12341234','솔데스크','123-4567','soldesk@naver.com','12345','서울시 종로구 관철동','코아빌딩5층','A01','D1','2019-09-11'); insert into member(id,passwd,mname,tel,email,zipcode,address1,address2,job,mlevel,mdate) values ('user','12341234','솔데스크','123-4567','user1@naver.com','12345','서울시 종로구 관철동','코아빌딩5층','A01','D1','2019-09-11'); insert into member(id,passwd,mname,tel,email,zipcode,address1,address2,job,mlevel,mdate) values ('webmaster','12341234','솔데스크','123-4567','webmaster@naver.com','12345','서울시 종로구 관철동','코아빌딩5층','A02','A1','2019-09-11');
2. 테이블 생성 후 회원 DTO와 회원 DAO 생성
생생한 테이블의 칼럼에 맞게 MemberDTO 를 만들어 준다
setter과 getter은 생략package net.member; public class MemberDTO{ //Data Transfer Object 데이터 전송 객체 private String id; private String passwd; private String mname; private String tel; private String email; private String zipcode; private String address1; private String address2; private String job; private String mlevel; private String mdate; } }//class end
3. 로그인 폼 생성
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <%@ include file="../header.jsp"%> <!-- 본문시작 --> <h3>로그인</h3> <form name="loginfrm" method="post" action="loginProc.jsp" onsubmit="return loginCheck(this)">
▲ get 이 아니라 반드시 post 방식으로 해 줘야한다
<div class="container"> <table class="table table-striped"> <tr> <td><input type="text" name="id" placeholder="아이디" required></td> <td rowspan="2"><input type="image" src="../images/bt_login.gif" style="cursor:pointer"></td>
▲ ※cursor: pointer 커서손모양 ※ input type=image기본속성이 submit
</tr> <tr> <td><input type="password" name="password" placeholder="비밀번호" required></td> </tr>
▲ ※placeholder 로 미리보기값 지정 ※ required 는 입력값이 반드시 있어야 한다
<tr> <td colspan="2"> 아이디저장 회원가입 아이디/비번찾기 </td> </tr> </table> </div> </form> <!-- 본문 끝 --> <%@ include file="../footer.jsp"%>
로그인 프로세스
loginProc.jsp
String id= request.getParameter("id").trim(); String passwd= request.getParameter("passwd").trim(); dto.setId(id); dto.setPasswd(passwd); String mlevel=dao.loginProc(dto); if(mlevel==null){ out.print("<p>아이디/비번 다시 한번 확인해주세요</p>"); out.print("<p><a href='javascript:history.back'></p>"); }else{ out.print("<p>로그인 성공!!!</p>"); /out.print(mlevel); }
▲ id와 passwd값을 받아 loginProc 매개변수 값으로 보내주었다
회원 DAO 에서 loginProc 메소드 생성
▲ 입력한 id와 passwd 와 일치하며 회원분류가 일치하면 로그인이 되었는지 확인
id 값과 passwd 값을 다른페이지로 전달
다른 페이지에서 로그인 상태를 공유할수 있도록
session.setAttribute("s_id", id); session.setAttribute("s_passwd", passwd); session.setAttribute("s_mlevel", mlevel); //첫페이지로 이동 String root=Utility.getRoot(); response.sendRedirect(root+"/index.jsp");
auth.jsp
▲ auth.jsp에 loginProc.jsp가 받은 id passwd mlevel값을 변수에넣어 불러오는 코드를 넣어주어
필요할때마다 불러 사용할 것이다'JAVA 교육 > myWeb' 카테고리의 다른 글
bootstrap (2) 2019.11.22 2019/09/11 5. session&application (0) 2019.11.22 2019/09/10 4. scope (0) 2019.11.22 2019/09/10 3. 페이징 (0) 2019.11.22 2019/09/09 2. 검색 창 (0) 2019.11.22 다음글이전글이전 글이 없습니다.댓글
스킨 업데이트 안내
현재 이용하고 계신 스킨의 버전보다 더 높은 최신 버전이 감지 되었습니다. 최신버전 스킨 파일을 다운로드 받을 수 있는 페이지로 이동하시겠습니까?
("아니오" 를 선택할 시 30일 동안 최신 버전이 감지되어도 모달 창이 표시되지 않습니다.)