🍁JDBC
JDBC는 자바 프로그램과 데이터베이스(오라클)를 연결시켜 주는 자바 API(응용 프로그래밍 인터페이스)이다.
JDBC는 데이터베이스에서 자료를 쿼리를 만들거나 업데이트하는 방법을 제공한다.
퍼시스턴스 계층
- JDBC
- Spring JDBC
- MyBatis
- JPA
JDBC를 중간 계층이라고 하며, 정확하게는 퍼시스턴스persistence 계층(영구 계층)이라고 한다.
퍼시스턴트 계층은 JDBC에만 있는 게 아니라, Spring, MyBatis 등에도 있다.
JDBC 환경 설정
- *.jar 설치
데이터베이스 제조사에서 배포하므로, 오라클을 사용한다면 오라클 홈페이지를 찾아가면 된다.
이번에는 다른 방법으로 Oracle 폴더 경로에 있는 jar 파일을 가져와 보려고 한다.
ojdbc6.jar 파일을 lib 폴더로 이동
- C:\oraclexe\app\oracle\product\11.2.0\server\jdbc\lib
먼저 JDBC 자바 프로젝트를 새로 생성한다. 그리고 위 Oracle 폴더 경로에서 ojdbc6.jar파일을 찾아 복사한다.
그리고 JDBC 프로젝트 lib 폴더를 만들어서 해당 폴더에 jar 파일을 붙여 넣기 한다.
ADD JARs
- 프로젝트 오른쪽 클릭 > Build Path > Configure Build Path
Configure Build Path에서 Libraries에 들어간다.
Classpath에서 ADD JARs 버튼을 클릭하고, ojdbc6.jar를 추가하면 설정이 완료된다.
사람과 SQL Developer의 오라클 서버 대화 과정
- 사람 + SQL Developer <- (SQL) -> Oracle Server
사람이 SQL Developer 프로그램으로 SQL을 이용해 Oracle Server와 대화하는 과정이다.
1. 클라이언트 프로그램 실행
2. DB 접속
2.1 호스트명: 서버 IP or 도메인 주소 (localhost)
2.2 포트번호: 1521
2.3 SID: xe
2.4 드라이버: thin
2.5 사용자: hr
2.6 암호: java1234
3. 질의
3.1 SQL 사용 (대화)
3.2 반환값이 없는 쿼리
- select를 제외한 모든 쿼리
3.3 반환값이 있는 쿼리
- select
- 결과셋을 반환하는 쿼리
- 결과셋의 업무에 사용
4. 접속 종료
4.1 commit/rollback
4.2 접속 종료
🍂자바 프로그램과 JDBC의 오라클 서버 대화 과정
- 자바 프로그램 + JDBC <- (SQL) -> Oracle Server
이번에는 사람 대신에 프로그램을, SQL Developer 대신에 JDBC를 이용해 Oracle Server와 대화를 한다.
JDBC 라이브러리 클래스
- Connection
- Statement
- ResultSet
1. 자바 프로그램 실행 (JDBC 실행)
2. DB 서버 접속
- JDBC의 Connection 클래스를 사용하여 프로그램으로 접속한다.
2.1 호스트명: 서버 IP or 도메인 주소 (localhost)
2.2 포트번호: 1521
2.3 SID: xe
2.4 드라이버: thin
2.5 사용자: hr
2.6 암호: java1234
3. 질의
- JDBC의 Statement 클래스를 사용하여 SQL을 실행한다.
3.1 SQL 사용 (대화)
3.2 반환값이 없는 쿼리
- select를 제외한 모든 쿼리
3.3 반환값이 있는 쿼리
- select
- 결과셋을 반환하는 쿼리
- 결과셋의 업무에 사용
- JDBC의 ResultSet 클래스로 결과셋을 가져온다. (ResultSet을 탐색하여 결과셋을 소비한다.)
4. 접속 종료
- JDBC의 Connection 클래스를 사용하여 접속을 끊는다.
4.1 commit/rollback
4.2 접속 종료