JSP로 MVC패턴, JDBC (DB연동)를 이용하여 로그인 / 회원가입 프로그램 만들기 Model1
============================================================================================
1)
--회원가입, 로그인을 위한 Main.jsp--
a 앵커태그를 이용해서
회원가입 버튼을 누를 경우 join.jsp로,
로그인 버튼을 누를 경우 login.jsp로 이동함
============================================================================================
----회원가입을 위한 join.jsp---
id, pw, name을 입력하여 회원가입 버튼을 누르면
joinProgram.jsp로 이동함
============================================================================================
============================================================================================
1. DB 연동을 위해 환경설정 작업하기
Data Source Explorer >> Database Connections 에서 New를 누른후
자신이 사용하는 DB를 선택한다
C:\oraclexe\app\oracle\product\11.2.0\server\jdbc\lib 로 들어가서 oracle6버젼으로 연결함
Service 네임을 db에서 xe로, host를 Server에서 localhost로 바꿔줌
이후 jsp에서 확인가능한 sql파일을 생성해줌!
회원정보 관리를 위한 member table을 만들어준다 (사용할 값은 ID, PW, NAME)
끝에 ;를 넣어주는것을 잊지말고(해당파일엔 실수로 미기입함)
이후 본격적으로 DB와의 연동을 위한 Model, Controller 부분으로 java 파일들을 만들어준다
1.
DTO.java
DB에 입력하고 관리할 ID, PW, NAME 세개의 값을 필드에 변수로 선언하고
이후 생성자 메소드를 만들어준다
로그인을 위한 DTO 메소드에는 ID와 PW가 필요하고
회원가입을 위한 DTO 메소드에는 ID, PW, NAME 3개의 변수 모두가 필요하다
이후 해당 변수들에 getter and setter를 적용한다
2.
DAO.java
나중에 사용할 변수들을 미리 선언함
연결을 위한 변수 Connection conn
전송을 위한 변수 PreparedStatement psmt
실행이후 확인을 위한 변수 rs와 row
getconn() 메소드에
class.forName으로 JDBC 드라이버 로딩을,
DB 연결시에 사용할 url, db_id, db_pw를 넣어주고
conn 변수로 데이터베이스 커넥션을 생성함
연결통로를 닫아주기 위한 메소드 close에
위에서 열었던 rs, psmt, conn 등을 모두 닫아준다
회원가입을 위한 메소드로
연결을 위해 getCon 메소드를 호출한뒤
SQL문 준비 (연결해서 이제 뭘 할껀지 적어주는 부분) = conn이 밀입국해서 뭘 할지 알려주기
-> String sql 이라는 변수에 아직 알 수 없는 값이니 ?로 채워서 넣어준다
SQL문 전송하기
-> DB로 전송하기 위한 SQL문 담기 (SQL문과 ?를 채워서 보내주기) = psmt라는 가방에 필요한 정보를 담아서 밀입국 시작
?인자가 있으므로 setString로 psmt라는 가방안에 값을 담아주기
->dto에서 ID,Pw,Name을 받아올 것임
->여기서 dto는
joinProgram.jsp에서 생성된 객체이며
이 dto객체는 위의 DTO.java 파일의 값에서 (id, pw, name)값을 받는 메소드,
즉 회원 가입을 위한 메소드인
이 메소드를 받는다.
다시 원래 보고있던 메소드의 설명을 이어하자면
psmt에 ?인자를 setString로
joinPrograms.jsp에 생성된 객체 dto에서 값을 받아와서 데이터를 채우고
이후 전역변수인 row로 psmt로 연결을 실행한다
이 psmt가 정상적으로 값이 담겼는지에 대한 확인은
joinPrograms에서 작성될 예정이다
============================================================================================
회원정보를 위한 필드, 생성자 메소드가 있는 DTO와
실질적인 DB연결, 회원가입등의 기능이 있는 DAO를 불러오기 위해 각각 객체를 생성
joinPrograms.jsp는 회원가입을 위한 곳이므로
dto 객체의 값은 id,pw, name을 받아온다
dao.join(dto) -->>
dao클래스에서 회원가입을 위한 join 메소드를 호출하겠다
그 값은 dto = id, pw, name이다!
로그인을 위한 페이지인 login.jsp
값을 loginProgram.jsp로 넘겨준다
DAO.java의 로그인 기능 부분
sql 문 작성 = id pw 값을 받아 name과 비교함
이후sql문을 실행하고
setString으로 id와 pw를 입력함
그리고 이것을 실행하고 (=rs)
실행했을때 값이 비어있지않고 ture일때 name
---loginProgram.jsp---
---로그인 실패와 성공시의 jsp파일들---
--result--