JDBC의 개요

Jieun·2023년 1월 30일
0

📝 JDBC 공부, OJDBC 설치 및 자습
#230130

📌 JDBC(Java DataBase Connectivity)

  • JAVA에서 DB에 연결(접근)할 수 있게 해주는 Java Programming API
  • Java에 기본 내장된 인터페이스
  • java.sql 패키지에서 제공

✔️ 라이브러리 연결하기
라이브러리 연결할 프로젝트 마우스 오른쪽버튼 - [Build Path] - [Configure Build Path][java Build Path] - [Add JARs] - 라이브러리받은 파일 위치 찾기(tools) - [apply]

💻 API : 언어나 특정 집단에서 미리 기능 만들어놓은 것. 내장되어 있는 기능들
💻 라이브러리 : 다른업체 또는 개인이 특정 언어를 자바로 이용해서 만든 기능을 배포하는 형식??

✔️ API와 라이브러리 차이
API : 응용 프로그램을 만드는데 필요한 연결 장치나 매개체
라이브러리 : 재사용이 필요한 기능으로
반복적인 코드 작성을 없애기 위한 어디서든 호출 가능한 코드의 집합


🏷️JDBC를 이용한 애플리케이션을 만들 때 필요한 것

1. Java의 JDBC 관련 인터페이스 (java.sql)

2. DBMS (Oracle)

3. Oracle에서 Java 애플리케이션과 연결할 때 사용할
   JDBC를 상속받아 구현한 클래스 모음(ojdbc11.jar 라이브러리)

   => OracleDriver.class (JDBC 드라이버) 이용


🏷️JDBC 코딩순서 ⭐⭐⭐⭐⭐

✔️ 1단계 : JDBC 객체 참조 변수 선언 (java.sql 패키지의 인터페이스)

  • Connection (conn)
    DB정보를 담은 객체, DB와 Java사이를 연결해주는 통로 (Stream과 유사함)

  • Statement (stmt)
    Connection을 통해 SQL 문을 DB에 전달하여 실행하고,
    생성된 결과(ResultSet, 성공한 행의 개수)를 반환(Java)하는데 사용되는 객체

  • ResultSet (rs)
    SELECT 질의 성공시 반환되는데, 조회 결과 집합을 나타내는 객체


✔️ 2단계 : 참조 변수에 알맞은 객체 대입

  • 2-1 : DB 연결에 필요한 Oracle JDBC Driver 메모리에 로드하기
    객체로 만들어 두기

  • 2-2 : 연결 정보를 담은 Connection을 생성
    DriverManager객체를 이용해서 Connection 객체를 만들어 얻어옴!
    type ,ip, port, sid, user, pw (6개)

💻 DriverManager
메모리에 로드된 JDBC 드라이버를 이용해서 Connection 객체를 만드는 역할

  • 2-3 : SQL 작성
  • 2-4 : Statement 객체 생성
    Connection 객체를 통해서 생성

  • 2-5 : 생성된 Statement 객체에 sql을 적재하여 실행한 후
           결과를 반환 받아와서 rs 변수에 저장

💻 executeQuery()
SELECT문 수행 메서드, ResultSet반환


✔️ **3단계 : SQL을 수행해서 반환 받은 결과(ResultSet)

한행씩 접근해서 컬럼 값 얻어오기 / while문 사용

💻 rs.next()
rs가 참조하는 ResultSet 객체의 첫번째 컬럼부터 순서대로 한 행씩 이동하며
다음 행이 있을경우 true 반환 / 없으면 false 반환

💻 ClassNotFoundException
클래스명 잘못작성하면 나는 오류 잡는 예외 구문

💻 SQLException
DB 관련 최상위 예외 (== 데이터베이스에 관련된 모든 예외)


✔️ 4단계 : 사용한 JDBC 객체 자원 반환 ( close() )

  • ResultSet, Statement, Connection 닫기 (생성 역순으로 닫는 것을 권장)
  • finally, try-catch 구문 사용
profile
👩‍💼👩‍💼➡️➡️➡️👩‍💻👩‍💻 생산자의 삶을 살기 위해 개발공부중

0개의 댓글