● JDBC 연동
- 중복검사, 회원가입, 로그인
● 중복검사
1. DBConnecter 생성
package dao;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
public class DBConnecter {
public static Connection getConnection() {
Connection conn = null;
try {
String url = "jdbc:oracle:thin:@localhost:1521:XE";
String user = "hr";
String pw = "hr";
Class.forName("oracle.jdbc.driver.OracleDriver");
conn = DriverManager.getConnection(url, user, pw);
} catch (ClassNotFoundException e) {
e.printStackTrace();
} catch (SQLException e) {
e.printStackTrace();
} catch (Exception e) {
e.printStackTrace();
}
return conn;
}
}
2. TBL_MEMBER 데이터에 접근할 수 있는 오브젝트 생성
package dao;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import vo.TBL_MEMBER_VO;
public class TBL_MEMBER_DAO {
Connection conn;
PreparedStatement pstm;
ResultSet rs;
private static final int KEY = 3;
//중복검사
//사용자가 입력한 아이디를 전달받아서 중복검사 진행
public boolean checkId(String id) {
//사용자가 입력한 아이디와 일치하는 개수를 가져온다.
String query = "SELECT COUNT(ID) FROM TBL_MEMBER WHERE ID = ?";
boolean check = false;
try {
//드라이버 연결을 통해 커넥션 객체를 가져온다.
conn.DBConnecter.getConnection();
//입력한 쿼리문을 pstm에 담아준다.
pstm = conn.prepareStatement(query);
//?를 채워준다.(좌에서 우로 1부터 시작)
pstm.setString(1, id);
//쿼리문 실행 후 결과를 rs에 담아준다.
rs = pstm.executeQuery();
//행 가져오기
rs.next();
//열 가져오기
if(rs.getInt(1) == 0) {check = true;}
} catch (SQLException e) {
e.printStackTrace();
} finally {
try {
if(rs != null) {
rs.close();
}
if(pstm != null) {
pstm.close();
}
if(conn != null) {
conn.close();
}
} catch (SQLException e) {
throw new RuntimeException();
}
}
return check;
}
}
3. TBL_MEMBER의 모델 객체가 모여있는 Package 생성
- 'Generate Getters and Setters'를 이용하여 getter setter 객체 생성
package vo;
public class TBL_MEMBER_VO {
private int number;
private String id;
private String pw;
private String name;
private int age;
public int getNumber() {
return number;
}
public void setNumber(int number) {
this.number = number;
}
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getPw() {
return pw;
}
public void setPw(String pw) {
this.pw = pw;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
}
※ Java Class Package
- vo : 모델 객체가 모여있는 Package
- dao(data access object) : data에 접근할 수 있는 오브젝트
※ 드라이버 추가
프로젝트 이름 우클릭 → Build Path → Configure Build Path → Libraries 카테고리 선택 → [Add External JARs] 클릭하여 C:\oraclexe\app\oracle\product\11.2.0\server\jdbc\lib의 ojdbc6.jar 선택 후 [Apply] → Order and Export 카테고리 선택 → [Select All] 클릭 후 [Apply] → [Apply and Close]