JDBC

김고양이·2023년 9월 13일

BackEnd

목록 보기
2/8

DML

  • Insert

  • Update

  • Delete

Transaction


JDBC

  • 자바를 사용해서 관계형 데이터베이스와 통신하기 위한 기술

  • 주요 클래스

  1. Driver 클래스

    • com.mysql.cj.jdbc.Driver.class
    • Driver란?
      자바 어플리케이션과 mysql간 상호작용을 위한 기능 제공
      //1. Driver 클래스 로딩
      Class.forName("com.mysql.cj.jdbc.Driver");
      // DriverManager에 Driver()을 생성하여 넣어줌
      // 해당 구문이 없어도 자동으로 찾아주지만, 
      // backend환경에서는 필수적으로 사용하도록
      // (혹, 원치않는 DB 사용을 막기위해 확실히) 
  2. DriverManager 클래스

    • 데이터베이스 연결 관리
      • Connection을 만들어주는 친구
    • Driver를 관리하고 사용하는 역할
  3. Connection 인터페이스

    • 데이터베이스와의 연결 정보
    • workbench에서 DB 사용을 위해 connection을 통해 접속하는 것과 같은 것
  4. PreparedStatement 인터페이스

    • SQL문을 실행하고 결과를 반환하는데 사용
    • select
      ResultSet rs = PreaparedStatement.executeQuery(); 
    • insert, update, delete
      int cnt = PreaparedStatement.executeUpdate();
      // cnt는 변경된 row의 개수 
  5. ResultSet 인터페이스

    • 조회 결과를 담고 있는 객체
    • Pointer 기반으로 사용(현재 가리키는 column(?))
      • 조회 데이터의 윗 행을 가리키고 있음
      • ResultSet.next()를 통해 포인터 이동
    • 해당 행의 데이터를 추출
      • ResultSet.getInt("column명" or index)
      • ResultSet.getString("column명" or index)

  • DTO : 데이터를 전달하기 위한 목적의 데이터 class country

  • DAO : Data Access Object, 관련된 데이터베이스와 연결하는 코드를 가지는 class (조회,삭제,수정), 데이터에 접근하는 객체

0개의 댓글