오라클 DB 와 연동하기
TestJavaProject 에서 오라클 db 와 연결하기 위한 코드
Class.forName
함수를 통해 오라클 JDBC Driver를 로드한다.
DriverManager.getConnection
함수를 이용하여 오라클DB 서버와 연결하였다.
- 쿼리를 주어 테이블에서 데이터를 읽어오거나 데이터를 삽입할 수 있다.
- 마지막으로
conn.close();
함수를 이용하여 db 연결을 끊는다.
- 아래의 코드는
TEST
라는 테이블에서 데이터를 꺼내오는 것이다.
- 프로젝트 구조는 다음과 같다.
- App.java 의
doPost
부분도 고쳐보자.
String s = db.getUsers();
즉 위에서 만든 getUsers
함수를 호출하여 db의 내용을 가져올 수 있다.
- 프로젝트를 컴파일 하고 컴파일한 결과를
WEB-INF/classes/
로 옮겨주자. 옮긴 다음 톰캣을 재시작하자. 사이트에 들어가서 request 페이지로 Post 요청을 하면 다음과 같이 TEST 테이블
의 내용을 읽어올 수 있다.


발생했던 오류
오류 내용
java.lang.ClassNotFoundException: oracle.jdbc.driver.OracleDriver
오류가 발생하였다. 해당 오류는 orcale
과 연결을 하기 위한 jdbc 파일을 못찾아서 발생한 오류이다.
해결법
- 먼저 JDBC 다운 사이트 에서 먼저 현재 사용중인
Oracle DB
버전에 맞는 창을 선택한다. 그다음 현재 서버에서 사용중인 JDK 버전을 지원하는 JDBC 를 다운 받는다.

- 다운받은 JDBC 파일을
WEB-INF/lib
폴더에 넣어준다.
- 톰켓을 다시 시작하자.
./apache-tomcat-10.1.7/bin/shutdown.sh
톰캣 중지
./apache-tomcat-10.1.7/bin/startup.sh
톰캣 시작
- 오류가 없어졌다!
오류 내용
java.sql.SQLException: ORA-12541: Cannot connect. No listener at host localhost port 1521. (CONNECTION_ID=Y10z7f22RfCCr07I1wmkCg==)
해결법
String dbURL = "jdbc:oracle:thin:@서버주소:1521:XE";
주소를 맞게 적어주어야 한다.
오류 내용
java.sql.SQLException: ORA-01017: 사용자명/비밀번호가 부적합, 로그온할 수 없습니다.
해결법
참고 사이트
댓글남기기