2017. 4. 28. 13:48ㆍJSP
< JoinServelt.java > doGet()
( login.jsp - "회원가입 버튼 클릭" 해서넘어옴)
# join.jsp로 이동한다
< join.jsp >
# member.js 자바스크립트 사용선언 후 아이디의 중복확인을 위한 idCheck() 메서드를 사용한다
< member.js >
# url = "idCheck.do?userid="+document.frm.userid.value;
# window.open( url , titlem fram ); // window창을 하나 생성하고 해당 창에서 idCheck.do로 이동한다
# idCheckServlet.java == idCheck.do // mapping
< idCheckServlet.java >
# 넘어온 userid 값을 저장한 후 DAO의 confirm 메서드를 이용해 DB에 해당 userid값이 존재하는지 확인한다
# 존재여부의 결과값 result 와 해당 유저 아이디 userid 를 idCheck.jsp 로 보내준다 ( 해당 window 창에 출력 )
< idCheck.jsp >
# window창에서 실제로 보이는 화면이다.
# result == 1 이면 DB에 해당 userid값이 존재하는 경우
# result == -1 이면 DB에 해당 userid값이 존재하지 않아서 해당아이디를 사용할 수 있다.
# 해당 폼은 idCheckServlet.java 의 doGet() 으로 다시 전송하여 반복적으로 중복확인을 할 수 있게 설계햇다
# 해당 아이디를 사용하려고 결정했으면 '사용버튼'을 클릭한다 이 때 member.js 의 idok() 메서드가 실행된다.
< member.js >
# opener : 자바스크립트를 실행한 페이지를 실행한 페이지 ( join.jsp )
# document : 자바스크립트를 실행한 페이지 ( joinCheck.jsp )
# opener.frm.reid.value 에 값을 넣어 줌으로써 아이디중복체크 실행여부를 확인 할 수 있다.
( joinCheck메서드에서 reid 에 값이 들어있는지 확인한다 )
# join.jsp 의 userid 입력창의 값이 중복체크확인 완료한 값으로 지정되고,
# self.close() -> window창이 종료되고 회원가입창( join.jsp ) 만 남게된다
< member.js >
# 회원가입 양식을 모두 작성하고 가입버튼을 누른 마지막 절차이다
# joinCheck() 메서드에서는 이름과 아이디의 입력조건이 만족되지 않으면 회원가입창의 데이터들을 전송시키지 않는다.
# 모든 조건이 만족되면 회원가입창의 폼은 action="join.do" method="post" 이므로
# JoinServlet.java == join.do // JoinServlet의 doPost() 로 이동하게 된다.
< JoinServlet.java > doPost()
# join.jsp 에서 입력한 데이터들을 "vo" 객체에 저장한다
# MemberDAO / insertMember 메서드사용 => DB에 해당 데이터 추가
# message속성을 가지고 login.jsp 로 이동하여 회원가입 성공여부를 알려준다
# userid 를 들고가서 아이디 입력창에 써주었다.
< MemberDAO / insertMember 메서드 > DB에 회원정보 등록
sql = "insert into membership valus(?,?,?,?,?,?)"; // membership테이블에 데이터를 삽입(추가)한다
conn = getConnection(); // DB와 연결
pstmt = conn.prepareStatement(sql); // pstmt객체에 대입 ( DB에 적용하기위해 )
pstmt.setString(1, vo.getName() ); // 바인딩변수를 채워준다 ( vo는 joinForm에서 작성한 데이터를 저장한 객체 )
....
result = pstmt.executeUpdate(); // 대입이 성공하면 1 , 대입이 실패하면 0
< MemberDAO / confirm 메서드 > 아이디의 중복여부 확인
sql = "select userid from membership where userid =?";
....
pstmt.setString ( 1 , userid );
rs = pstmt.executeQuery();
if ( rs.next() ){
// rs.next()가 존재 한다면, DB에 해당 userid가 존재한다 == 중복되서 생성못한다
result = 1;
}
result = 1이면 아이디가 중복된 것 , result = -1이면 아이디가 중복되지 않음=>사용가능한 아이디
< join.jsp 실행화면 >
< 아이디의 중복 체크 화면 >
# idCheck() 메서드가 window 창을 실행시켯고, window창에는 idCheck.jsp 가 출력
< joinServlet / doPost 에서 모든 조건 만족한 후 login.jsp 로 이동 >
# DB에 입력한 정보들이 insert 되었다.
# 로그인이 가능하다
'JSP' 카테고리의 다른 글
JSP MVC1 모델 로그인 및 회원가입 ④ 로그아웃 하기 (0) | 2017.04.28 |
---|---|
JSP MVC1 모델 로그인 및 회원가입 ③ 회원정보 수정페이지 (0) | 2017.04.28 |
JSP MVC1 모델 로그인 및 회원가입 ① 로그인페이지 (0) | 2017.04.28 |
JSP MVC1 모델 구성 (0) | 2017.04.28 |
JSP MVC1 모델 DBCP연동하기 (0) | 2017.04.24 |