English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
JDBC 드라이버는 JDBC API에서 정의된 인터페이스를 구현하여 데이터베이스 서버와 상호작용합니다.
예를 들어, JDBC 드라이버를 사용하여 SQL이나 데이터베이스 명령을 보내고, 그 결과를 Java에서 수신하여 데이터베이스 연결을 열고 그와 상호작용할 수 있습니다.
JDK가 제공하는 Java.sql 패키지는 여러 클래스를 포함하고 있으며, 이 클래스들은 그 행동을 정의하며 실제 구현은 제3자 드라이버에서 완료됩니다. 제3자 제공자는 자신의 데이터베이스 드라이버에서 구현합니다. java.sql.Driver 인터페이스.
JDBC 드라이버의 구현은 Java가 실행되는 여러 운영체제와 하드웨어 플랫폼에 따라 다릅니다. Sun은 구현을 네 가지 유형으로 나누었습니다. 즉, 유형1、2、3그리고4에 대해 설명하겠습니다.-
타입1드라이버에서 JDBC 브리지가 각 클라이언트 컴퓨터에 설치된 ODBC 드라이버에 접근합니다. ODBC를 사용하려면, 시스템에 대상 데이터베이스를 대표하는 데이터소스이름(DSN)을 설정해야 합니다.
Java가 처음 출시될 때, 대부분의 데이터베이스가 ODBC 접근을 지원하기 때문에 유용한 드라이버였지만, 지금은 이러한 유형의 드라이버를 실험 용으로 사용하거나 다른 대체 방법이 없는 경우에만 사용하는 것이 좋습니다.
JDK 1.2추가된 JDBC-ODBC Bridge는 이러한 드라이버의 좋은 예입니다.
Type 2드라이버에서 JDBC API 호출이 데이터베이스가 독특한 로컬 C로 변환됩니다. / C ++ API 호출. 이러한 드라이버는 일반적으로 데이터베이스 제공자가 제공하며 JDBC와 유사하게 제공됩니다.-ODBC Bridge와 같은 방식으로 사용할 수 있습니다. 제공자 특정 드라이버는 각 클라이언트 컴퓨터에 설치되어야 합니다.
데이터베이스를 변경하면 반드시 로컬 API를 변경해야 합니다. 왜냐하면 이는 데이터베이스에 특화되어 있으며 지금은 옛날 것입니다. 그러나 Type 2드라이버는 ODBC의 비용을 제거하여 속도를 높일 수 있습니다.
Oracle Call Interface(OCI) 드라이버는 Type 2드라이버 예제.
Type 3드라이버에서는 데이터베이스에 접근하기 위해 세 가지 방법을 사용합니다. JDBC 클라이언트는 표준 네트워크 소켓을 통해 중간웨어 애플리케이션 서버와 통신합니다. 그런 다음, 소켓 정보가 중간웨어 애플리케이션 서버에서 DBMS가 필요로 하는 호출 형식으로 변환되어 데이터베이스 서버로 전달됩니다.
이 드라이버는 클라이언트에 코드를 설치할 필요가 없기 때문에 매우 유연하며, 단일 드라이버는 여러 데이터베이스에 대한 접근을 제공할 수 있습니다.
귀하의 애플리케이션 서버를 JDBC '대리자'로 간주할 수 있습니다. 이는 클라이언트 애플리케이션에 대한 호출을 의미하며, 따라서 이 드라이버 유형을 효과적으로 사용하기 위해 애플리케이션 서버 구성에 대한 일부 지식이 필요합니다.
귀하의 애플리케이션 서버는 사용할 수 있습니다.1、2또는4형 드라이버는 데이터베이스와 통신하며, 미세한 차이를 이해하는 것이 도움이 될 것입니다.
Type 4드라이버에서, Java 기반의纯粹 드라이버는 소켓을 통해 공급업체의 데이터베이스와 직접 통신합니다. 이는 데이터베이스 성능이 가장 높은 드라이버로, 일반적으로 공급업체 본인이 제공합니다.
이 드라이버는 매우 유연하며, 클라이언트 또는 서버에 특별한 소프트웨어를 설치할 필요가 없습니다. 또한, 이러한 드라이버를 동적으로 다운로드할 수 있습니다.
MySQL의 Connector/J 드라이버는 Type 4드라이버는 그 네트워크 프로토콜의 독점적 성질로 인해, 데이터베이스 공급업체는 일반적으로 제공합니다.4클래스 드라이버.
Oracle, Sybase 또는 IBM과 같은 데이터베이스 유형에 접근하려면, 최선의 드라이버 유형4.
귀하의 Java 애플리케이션이 여러 가지 데이터베이스 유형을 동시에 접근할 경우, 유형3최선의 드라이버입니다.
귀하의 데이터베이스에서 아직 사용할 수 없습니다.3형 또는4형 드라이버의 경우, 유형2드라이버는 매우 유용합니다.
유형1드라이버는 배포 단계 드라이버로 간주되지 않으며, 일반적으로 개발 및 테스트 목적에만 사용됩니다.