주니 개발 도서관

오라클(Oracle)

(5) 오라클과 자바를 연동하는 법

주니홍 2022. 7. 4. 16:25

지금까지는 SQL과 오라클을 연동하여 사용하였지만,

JAVA와 오라클을 연동하여 SQL문법을 JAVA에서 사용해보자!

 

JDBC(Java Database Connectivity)는

자바에서 데이터베이스에 접속할 수 있도록 하는 자바 API이다.

 

4단계를 꼭 암기하도록 하자!

1) DBMS와 연동을 하기 위한 드라이버가 필요

 

2) DB에 연결

 

3) 데이터를  write (INSERT, UPDEATE, DELETE),  read(SELECT)가 가능

 

4) DB와의 연결을 해제 ( ★ )

= 연결메모리가 계속 소모되기 때문에 장기적으로 안좋다

 

 

 

1. DBMS와 연동을 하기위한 드라이버가 필요

final String driverName ="oracle.jdbc.driver.OracleDriver";

Class.forName(driverName);

오라클 MYSQL 등등 고정된 드라이버 문자열이 존재한다

변수로 선언해 두면 사용하기 쉽고, 유지보수에 용이할 것이다

 

Class.forName( ) ; 은 try & catch로 감싸주어야 한다

 

 

 

 

 

2. DB에 연결

final String url = "jdbc:oracle:thin:@localhost:1521:xe";
final String user = "kim";
final String passwd="1234";

Connection conn =null;

conn=DriverManager.getConnection(url, user, passwd);

변수에 담아두고 사용하는 것이 좋고

 

Connection conn = null;스코프이슈 때문에 따로 초기화함

 

DriverManager.getConnection( ) ;

ㅡ> DB에 연결하는것이고URL , User, passwd를 차례로 인풋값에 대입 해준다

 

URL은 Data Source Explorer에서 사용중인 오라클에

ㅡ> 오른클릭 ㅡ> Properfies ㅡ> Driver Properfies 에서 확인할 수있다

 

DriverManager.getConnection() 은  try & catch문으로 감싸 주어야한다

 

 

 

 

3. 데이터를 write, read가 가능

Statement stmt = null;
stmt = conn.createStatement();

stmt.execute("INSERT INTO PRODUCT VALUES((SELECT NVL(MAX(PID),0)+1 FROM PRODUCT),'"+name+"',"+price+","+cnt+",'"+category+"')");
System.out.println("로그 : DB연결하여 쿼리문 실행완료");

stmt객체가 확보되어야

JAVA에서 SQL문을 작성할수 있게됨

stmt = conn.createStatement( ) ; ㅡ> 객체 확보

ㅡ> read (SELECT) ,  write (INSERT, UPDATE, DELETE) 사용 가능

 

stmt.execute( " SQL의 INSERT 사용 " );

 

SQL의 INSERT를 사용하여 로그가 정상적으로 출력되었다면

데이터 베이스에 INSERT한 내용이 저장되어 있음을 확인 할 수 있다 

 

conn.createStatement( ) ; try & catch를 해주어야 사용 가능하다

 

 

4. DB와의 연결을 해제

finally {
	try {
			stmt.close();
			conn.close();
		} catch (SQLException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}

	}

 

연결한 순서를 생각하며 해제해준다

1. stmt 끊기

2. conn 끊기

3. try & catch 문으로 감싸주기

 

 

 

 

 

공통적으로 사용 되는 try & catch문 한번에 정리하기

공통적으로 모두 try & catch로 감싸는 것이 있기때문에

try 바디안에 모두 적어주고

catch문에 최상위 Exception을 사용하여 감싸준다

이후 닫아주는 거 까지 준비해 놓으면

 

stmt을 이용하여 SQL문 작성이 가능해 졌다

 

 

 

'오라클(Oracle)' 카테고리의 다른 글

(6) 자바에서 SQL을 이용해 CRUD 표현하기  (0) 2022.07.04
(4) SQL 기초 (조인 JOIN)  (0) 2022.07.04
(3) SQL기초 (페이징처리)  (0) 2022.07.04
(2) SQL기초 (HAVING, GROUP BY 절)  (0) 2022.07.04
(1) SQL 기초  (0) 2022.07.04