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.