JAVA는 표준 인터페이스인 JDBC API 를 제공
- 자바를 이용한 데이터베이스 접속과 SQL 문장의 실행, 그리고 실행 결과로 얻어진 데이터의 핸들링을 제공하는 방법과 절차에 관한 규약을 의미
- 자바 프로그램 내에서 SQL 문을 실행하기 위한 자바 API
- SQL과 프로그래밍 언어의 통합 접근의 한 형태
JDK 설치
JDBC 드라이버 설치
: Maven에 의존성을 추가해줘야 함 → MySQL 사이트에서 다운
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.45</version>
</dependency>
JDBC를 이용한 프로그래밍 방법
IMPORT
import java.sql.*;
드라이버 LOAD
Class.forName("com.mysql.jdbc.Driver");
: DB 벤더에서 제공하는 객체를 메모리에 올림
Connection 얻기
Connection con = DriverManager.getConnection(dburl,ID,PWD);
public static Connection getConnection() throws Exception{
String url = "jdbc:oracle:thin:@117.16.46.111:1521:xe";
String user = "user";
String pwd = "pw";
Connection conn = null;
Class.forName("oracle.jdbc.driver.OracleDriver");
conn = DriverManager.getConnection(url,user,pwd);
return conn;
}
Statement 생성
Statement stmt = con.createStatement();
질의 수행
ResultSet rs = stmt.executeQuery("select no from user");
참고
stmt.execute("query")
⇒ Any SQLstmt.executeQuery("query");
⇒ SELECTstmt.executeUpdate("query");
⇒ INSERT, UPDATE, DELETEResultSet 으로 결과 받기
ResultSet rs = stmt.executeQuery("select no form user");
while(rs.next())
: 결과가 있다면 데이터를 가져옴
System.out.println(rs.getInt("no"));
Close
rs.close();
stmt.close();
con.close();
→ ✔ 뒤늦게 open 한 것 부터 close 해줘야 함