본문 바로가기

JAVA/JDBC

JDBC API

java.sql Package 살펴보기


java.sql.Driver

- DriverManager에 의해서 관리되고 Class.forName(Driver이름);을 주면 DriverManager에 register한다.


java.sql.Connection

Connection 에다가 url과 user ,password를 넘겨줘서 네트워크 소켓 넘겨주듯, 넘겨준다.

- conn = DriverManager.getConnection(url,user,password);


java.sql.preparedStatement

statement를 가져옴.

stmt = conn.prepareStatement(sql);


java,sql.resultSet

DB가 swap 공간에 resultSet을 넘겨주면, 그 주소를 연결해서 가지고 있는다!!!

rSet = stmt.executeQuery();



String selectSQL = "select department_id,department_name,location from department";

1 Class.forName(driveClass);     //driver를 등록!! 2 conn = DriverManager.getConnection(url, user, password);     //db와 ㅇ 3 statement = conn.prepareStatement(selectSQL);        

//sql문들 가지고 처리한다.

4 resultSet = statement.executeQuery();

//쿼리를 실행하고 메모리에 적재된 결과의 주소를 연결한다.




		Connection conn = null;
		Statement statement = null;
		ResultSet resultSet = null;
		try {
			//Class Loader!! 싱난다.
			Class.forName(driveClass);
			System.out.println("연결 대기중");
			conn = DriverManager.getConnection(url, user, password);
			System.out.println("ORACLE DB 연결 완료");
                        String selectSQL = "select department_id,department_name,location from department";
			statement =  conn.prepareStatement(selectSQL).executeQuery();
			resultSet = statement.executeQuery();

			// 조회결과 처리하기
			while (resultSet.next()) {
				String dept_id = resultSet.getString(1);
				String dept_name = resultSet.getString(2);
				String location = resultSet.getString(3);

				System.out.println(dept_id + "\t" + dept_name + "\t" + location);
			}
		} catch (ClassNotFoundException | SQLException e) {
			e.printStackTrace();
		}
		finally {

			if (resultSet != null) {
				try {
					resultSet.close();
				} catch (SQLException e) {
				}
			}
			if (statement != null) {
				try {
					statement.close();
				} catch (SQLException e) {
				}
			}

			if (conn != null) {
				try {
					conn.close();
				} catch (SQLException e) {
				}
			}
		}


반응형

'JAVA > JDBC' 카테고리의 다른 글

JDBC의 구성 & 주요 DBMS  (0) 2015.03.11
DAO (Data Access Objects)  (0) 2015.03.09
JDBC Driver Loading  (0) 2015.03.04
조인 (JOIN)  (0) 2015.03.03
WHERE절 주요 연산자  (0) 2015.03.03