앞의 포스팅에서 JDBC 프로그래밍 절차에 대해서 언급했는데
그대로만 하면 
이런 메시지가 뜨면서 되지 않는다.

당연하다. JDBC 드라이버를 loading하고자 했는데 있어야 로딩을 하는데 파일이 없으니 저런 에러가 뜰 수 밖에...


필요한 JDBC 드라이버파일은 오라클을 설치한 폴더안에 \jdbc\lib이라는 경로에 있다. 
찾기 어려우면 그냥 오라클 폴더에서 검색 눌러서 ojdbc누르면 나올 것이다.
그중 ojdbc6.jar를 찾으면 된다.(Java 1.6에 최적화된 버전이다.  Java 1.5를 쓴다면 ojdbc5.jar를 사용하면 된다.)

그럼 그 파일을 자바(JRE)가 깔려있는 폴더안의 lib\ext에 복사해서 넣어주면 된다.
이클립스를 기준으로 설명했을 때, 

드라이버 파일을 복사해서 넣어주기 전의 라이브러리가 이러했는데...

드라이버 파일을 복사해서 넣어주고 난 후의 라이브러리에 이렇게 ojdbc6.jar이 보인다.

이제 앞의 포스팅을 참고하여 JDBC 프로그래밍을 하면 된다.














Posted by KoRoGhOsT
,

DBMS와 상관없이 일반적인 JDBC의 프로그래밍 절차이다.

1. JDBC Driver 로딩!
2. Connection 설정! (DB의 ID / PW)
3. SQL 실행
4. SQL문이 select문이면 ResultSet을 이용한 처리
5. 사용한 자원 반환


간단한 프로그램 예제로 이것을 설명해보면...

간단한 이 프로그램의 순서는 위와 같다.
1. 생성자에서(DBConnectTest) 드라이버를 로딩하고
2. SetConnection에서 DB Connection을 하며
3. 4. FindData에서 SQL을 실행하고 결과를 추출한다.
5. 마지막으로 EndConnection에서 사용한 자원을 반환하고 접속을 종료한다.


1번 부분이다. 
별다른거 없이 jdbc드라이버만 로딩해준다.
그런데 이렇게만 해주고 프로그램을 돌리면 에러가 난다.
JDBC 드라이버 파일이 있어야 로딩을 해주므로 그것에 대한 설정을 해야 되는 것이다.

2번 부분이다.
밑줄 쳐진 곳에 적당하게 DB가 설치된 주소(localhost, IP주소, 등등)와
그 DB계정의 ID,PW를 알맞게 설정하고 
getConnection을 해준다.

3, 4번 부분이다.
사용할 SQL문을 executeQuery안에 넣어주거나, 따로 String변수로 executeQuery에 전달해주면
그 결과값이 rs에 저장된다. 
while문을 돌면서 int값은 getInt로, string값은 getString으로 받아주고 확인을 위해서 print해준다.


5번 부분이다.
자원들을 차례로 반환해준다.


프로그램 실행결과는 위와 같다.


Posted by KoRoGhOsT
,