JDBC-소개

JDBC 란 무엇입니까?

JDBC는 Java Database Connectivity는 Java 프로그래밍 언어와 광범위한 데이터베이스 간의 데이터베이스 독립적 연결을위한 표준 Java API입니다.

JDBC 라이브러리에는 일반적으로 데이터베이스 사용과 관련된 아래에 언급 된 각 작업에 대한 API가 포함되어 있습니다.

  • 데이터베이스에 연결합니다.

  • SQL 또는 MySQL 문 생성.

  • 데이터베이스에서 SQL 또는 MySQL 쿼리를 실행합니다.

  • 결과 기록보기 및 수정.

기본적으로 JDBC는 기본 데이터베이스에 대한 이식 가능한 액세스를 허용하는 완전한 인터페이스 세트를 제공하는 사양입니다. Java는 다음과 같은 다양한 유형의 실행 파일을 작성하는 데 사용할 수 있습니다.

  • 자바 애플리케이션

  • 자바 애플릿

  • 자바 서블릿

  • JSP (Java ServerPages)

  • EJB (Enterprise JavaBeans).

이러한 모든 실행 파일은 JDBC 드라이버를 사용하여 데이터베이스에 액세스하고 저장된 데이터를 활용할 수 있습니다.

JDBC는 ODBC와 동일한 기능을 제공하므로 Java 프로그램이 데이터베이스에 독립적 인 코드를 포함 할 수 있습니다.

전제 조건

더 나아 가기 전에 다음 두 가지 주제를 잘 이해해야합니다.

  • 핵심 JAVA 프로그래밍

  • SQL 또는 MySQL 데이터베이스

JDBC 아키텍처

JDBC API는 데이터베이스 액세스를 위해 2 계층 및 3 계층 처리 모델을 모두 지원하지만 일반적으로 JDBC 아키텍처는 2 개의 계층으로 구성됩니다.

  • JDBC API: 이것은 애플리케이션 -JDBC Manager 연결을 제공합니다.

  • JDBC Driver API: 이것은 JDBC Manager-to-Driver 연결을 지원합니다.

JDBC API는 드라이버 관리자 및 데이터베이스 특정 드라이버를 사용하여 이기종 데이터베이스에 대한 투명한 연결을 제공합니다.

JDBC 드라이버 관리자는 각 데이터 소스에 액세스하는 데 올바른 드라이버가 사용되는지 확인합니다. 드라이버 관리자는 여러 이기종 데이터베이스에 연결된 여러 동시 드라이버를 지원할 수 있습니다.

다음은 JDBC 드라이버 및 Java 응용 프로그램과 관련된 드라이버 관리자의 위치를 ​​보여주는 아키텍처 다이어그램입니다.

공통 JDBC 구성 요소

JDBC API는 다음 인터페이스와 클래스를 제공합니다-

  • DriverManager:이 클래스는 데이터베이스 드라이버 목록을 관리합니다. 통신 하위 프로토콜을 사용하여 Java 애플리케이션의 연결 요청을 적절한 데이터베이스 드라이버와 일치시킵니다. JDBC에서 특정 하위 프로토콜을 인식하는 첫 번째 드라이버는 데이터베이스 연결을 설정하는 데 사용됩니다.

  • Driver:이 인터페이스는 데이터베이스 서버와의 통신을 처리합니다. 매우 드물게 Driver 개체와 직접 상호 작용합니다. 대신이 유형의 개체를 관리하는 DriverManager 개체를 사용합니다. 또한 Driver 개체 작업과 관련된 세부 정보도 추상화합니다.

  • Connection:이 인터페이스는 데이터베이스에 연결하기위한 모든 방법을 포함합니다. 연결 개체는 통신 컨텍스트를 나타냅니다. 즉, 데이터베이스와의 모든 통신은 연결 개체를 통해서만 이루어집니다.

  • Statement:이 인터페이스에서 생성 된 개체를 사용하여 SQL 문을 데이터베이스에 제출합니다. 일부 파생 인터페이스는 저장 프로 시저를 실행하는 것 외에도 매개 변수를 허용합니다.

  • ResultSet:이러한 개체는 Statement 개체를 사용하여 SQL 쿼리를 실행 한 후 데이터베이스에서 검색된 데이터를 보유합니다. 데이터를 이동할 수 있도록 반복자 역할을합니다.

  • SQLException: 이 클래스는 데이터베이스 애플리케이션에서 발생하는 모든 오류를 처리합니다.

JDBC 4.0 패키지

java.sql 및 javax.sql은 JDBC 4.0의 기본 패키지입니다. 이 튜토리얼을 작성할 당시의 최신 JDBC 버전입니다. 데이터 소스와 상호 작용하기위한 기본 클래스를 제공합니다.

이 패키지의 새로운 기능에는 다음 영역의 변경 사항이 포함됩니다.

  • 자동 데이터베이스 드라이버로드.

  • 예외 처리 개선.

  • 향상된 BLOB / CLOB 기능.

  • 연결 및 명령문 인터페이스 향상.

  • 국가 별 문자 집합 지원.

  • SQL ROWID 액세스.

  • SQL 2003 XML 데이터 형식 지원.

  • Annotations.