본문 바로가기

DBMS

[DBMS] 21

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]

 

'DBMS' 카테고리의 다른 글

[DBMS] 22  (0) 2021.11.22
[DBMS] 20  (0) 2021.11.16
[DBMS] 19  (0) 2021.11.14
[DBMS] 18  (0) 2021.11.13
[DBMS] 17  (0) 2021.11.11