JDBC란?

JOY·2021년 12월 6일
0

📌JDBC(Java Database Connectivity)란?


1. JDBC 개요

정의

  1. 자바를 이용한 데이터베이스 접속과 SQL 문장의 실행, 실행결과로 얻어진
    데이터의 핸들링을 제공하는 방법과 절차에 관한 규약
  2. 자바 프로그램내에서 SQL문을 실행하기 위한 자바 API
  3. SQL과 프로그래밍 언어의 통합 접근 중 한 형태
  • JAVA는 표준 인터페이스 JDBC API를 제공
  • 데이터베이스 벤더, 또는 기타 써드파티에서는 JDBC인터페이스를 구현한 드라이버(driver) 제공

환경구성

  • JDK 설치
  • JDBC 드라이버 설치
  • Maven에 다음과 같은 의존성을 추가한다. (MySQL 사이트에서 다운로드)
<dependency>
	<groupId>mysql</groupId>
	<artifactId>mysql-connect-java</artifactId>
	<version>5.1.45</version>
</dependency>

2. JDBC 사용

JDBC를 이용한 프로그래밍 방법

  1. import java.sql.*;
  2. 드라이버 로드
    : 벤더가 구현하고 있는 각각의 객체 -> 벤더가 제공해주는 라이브러리 사용 하기 위해 로딩
  3. Connect 객체 생성
    : DB에 접속
  4. Statement 객체 생성 및 질의 수행 (Statement도 interface)
    : 쿼리문 생성 및 실행
  5. SQL문의 결과물이 있다면 ResultSet 객체 생성
  6. 모든 객체 닫기

3. JDBC 클래스의 생성관계

4. JDBC - 사용 단계별 설명

  • import

    1
    import java.sql.*;

  • 드라이버 로드

    1
     Class.forName("com.mysql.jdbc.Driver");
    jdbc.Drive : 패키지명.클래스명
  • Connection 얻기

    1
    2
    String dburl = "jdbc:mysql://localhost/dbName";
    Connection con = DriverManager.getConnection(dburl,id,pwd);

  • Statement 생성 : 쿼리문 생성 및 실행

    1
    Statement stmt = con.createStatement();

  • 질의 수행

    1
    ResultSet rs = stmt.executeQuery("쿼리문");
  • 쿼리문의 종류에 따라 달라지는 메서드
    stmt.execute("쿼리문") : any SQL
    stmt.executeQuery("쿼리문") : SELECT
    stmt.executeUpdate("쿼리문") : insert, update, delete

  • ResultSet으로 결과 받기
    1
    2
    3
    ResultSet rs = stmt.executeQuery("쿼리문");
    while (rs.next())
        System.out.println(rs.getInt("no"));

결과값이 있다면 "no"번째의 값을 꺼내와라

  • Close
    rs.close();
    stmt.close();
    con.close();
profile
Just Do IT ------- 🏃‍♀️

0개의 댓글