Programming/Java
[JDBC] Oracle Database 연동
seandoesdev
2023. 8. 1. 22:57
JDBC(Java DataBase Connectivity)
- 자바를 이용한 데이터베이스 접속과 SQL 문장의 실행, 그리고 실행 결과로 얻어진 데이터의 핸들링을 제공하는 방법과 절차에 관한 규약.
- 자바 프로그램 내에서 SQL문을 실행하기 위한 자바 API
- 데이터베이스 벤더 또는 기타 써드파티에서는 JDBC 인터페이스를 구현한 드라이버(driver)를 제공한다.
- java.sql 패키지 사용
- 비런타임 계열이기 때문에 예외처리 필수
다음 순서대로 진행행합니다. (Eclipse)
1. Load Driver
2. Connect Oracle DB
1. Load Driver
프로젝트에서 마우스 오른쪽 클릭하면 Properties가 나온다. 단축키로 Alt + Enter를 사용하면된다.
Properties for jdbcstudy ➡️ Java Build Path ➡️ Add External JARS.. ➡️ C:\oraclexe\app\oracle\product\11.2.0\server\jdbc\lib\ojdbc6_g.jar 파일을 가져온다.
// 드라이버 로딩
try {
Class.forName(driver);
}catch(ClassNotFoundException e) {
e.getStackTrace();
}
2. Connect Oracle DB
2.1 DB 연결을 위한 데이터 입력
기본적으로 데이터베이스에 연결하기 위해 필요한 데이터를 입력한다.
String driver ="oracle.jdbc.driver.OracleDriver";
String url = "jdbc:oracle:thin:@localhost:1521:xe";
String userid = "SCOTT";
String passwd = "TIGER";
driver : 오라클 드라이버를 가져오기 위한 클래스명.
url : DB 접속을 위한 url
userid : 접속할 DB의 username
passwd : 접속할 DB의 password
2.2 드라이버 로드
위에서 .jar 파일(드라이버)를 사용하기 위해 로드한다.
try {
Class.forName(driver);
}catch(ClassNotFoundException e) {
e.getStackTrace();
}
2.3 SELECT
Connection con = null;
PreparedStatement pstmt = null;
ResultSet rs = null;
try {
con = DriverManager.getConnection(url, userid, passwd);
String sql = "select deptno as no, dname, loc from dept";
pstmt = con.prepareStatement(sql);
rs = pstmt.executeQuery();
while (rs.next()) {
int deptno = rs.getInt("no");
String dname = rs.getString("dname");
String loc = rs.getString("loc");
System.out.println(deptno+"\t"+dname+"\t"+loc);
}
}catch(SQLException e) {
e.getStackTrace();
}finally {
try {
if(rs != null)rs.close();
if(pstmt != null)pstmt.close();
if(con != null)con.close();
} catch (SQLException e) {
e.printStackTrace();
}
}