Java Database Connectivity
Basisdaten

Entwickler Sun Microsystems
Aktuelle Version 4.3[1][2]
(21. September 2017)
Betriebssystem Java
Programmier­sprache Java
Kategorie Programmierschnittstelle
Lizenz GNU General Public License/Java Community Process
oracle.com

Java Database Connectivity (JDBC, englisch für Java Datenbankverbindungsfähigkeit) ist eine Datenbankschnittstelle der Java-Plattform, die eine einheitliche Schnittstelle zu Datenbanken verschiedener Hersteller bietet und speziell auf relationale Datenbanken ausgerichtet ist.

JDBC ist in seiner Funktion als universelle Datenbankschnittstelle vergleichbar mit z. B. ODBC unter Windows oder DBI unter Perl.

Zu den Aufgaben von JDBC gehört es, Datenbankverbindungen aufzubauen und zu verwalten, SQL-Anfragen an die Datenbank weiterzuleiten und die Ergebnisse in eine für Java nutzbare Form umzuwandeln und dem Programm zur Verfügung zu stellen.

Für jede spezifische Datenbank sind eigene Treiber erforderlich, die die JDBC-Spezifikation implementieren. Diese Treiber werden meist vom Hersteller des Datenbank-Systems geliefert.

JDBC ist Teil der Java Standard Edition seit JDK 1.1. Die JDBC-Klassen liegen in den Java packages java.sql und javax.sql. Seit JDBC 3.0 wird JDBC im Rahmen des Java Community Processes weiterentwickelt. JSR 221 ist die Spezifikation der Version JDBC 4.0; aktuell 4.3 (Teil von Java SE 9).[3]

Typen von JDBC-Treibern

Bearbeiten
Die 4 Treiber-Typen von JDBC

In der JDBC-Spezifikation werden verschiedene Typen von JDBC-Treibern unterschieden.

Typ-1-Treiber

Bearbeiten

Ein JDBC-Typ-1-Treiber kommuniziert ausschließlich über einen JDBC-ODBC-Bridge-Treiber. Die bekannteste JDBC-ODBC-Bridge ist die von Oracle vertriebene. Damit ist ein Typ-1-Treiber abhängig von einem installierten ODBC-Treiber. Der JDBC-ODBC-Bridge-Treiber wandelt JDBC- in ODBC-Anfragen um.

Ein Typ-1-Treiber wird dann verwendet, wenn es zu der Datenbank einen ODBC-Treiber, jedoch keine eigenständigen JDBC-Treiber gibt.

Mit Java 9 wurde die Unterstützung für JDBC-Typ-1-Treiber eingestellt.

Typ-2-Treiber

Bearbeiten

Ein Typ-2-Treiber kommuniziert über eine plattformspezifische Programmbibliothek auf dem Client mit dem Datenbankserver. Das bedeutet, dass für jede Betriebssystem-Plattform zu dem Typ-2-Treiber eine zusätzliche Programmbibliothek benötigt wird.

Typ-3-Treiber

Bearbeiten

Mittels des Typ-3-Treibers werden die JDBC-API-Befehle in generische DBMS-Befehle übersetzt und (über ein Netzwerkprotokoll) an einen Middleware-Treiber auf einem Anwendungsserver übertragen. Erst dieser Anwendungsserver transformiert die Befehle für die spezifischen Datenbankserver und leitet sie an diese weiter. Ein Typ-3-Treiber benötigt damit keine plattformspezifischen Bibliotheken und muss auch nichts über den verwendeten Datenbankserver wissen.

Typ-3-Treiber eignen sich sehr gut für Internet-Protokolle im Zusammenhang mit Firewalls.

Typ-4-Treiber

Bearbeiten

Beim Typ-4-Treiber werden die JDBC-API-Befehle direkt in DBMS-Befehle des jeweiligen Datenbankservers übersetzt und (über ein Netzwerkprotokoll) an diesen übertragen. Ein Middleware-Treiber wird dabei nicht verwendet. Damit kann ein Typ-4-Treiber schneller als ein Typ-3-Treiber sein, ist aber weniger flexibel.

Typ-4-Treiber eignen sich gut für Intranet-Lösungen, die schnelle Netzprotokolle nutzen wollen.

Bearbeiten
Commons: JDBC – Sammlung von Bildern, Videos und Audiodateien
Wikibooks: Java Standard: JDBC – Lern- und Lehrmaterialien

Einzelnachweise

Bearbeiten
  1. JSR-000221 JDBC API Specification 4.3.
  2. JSR 221: JDBCTM 4.0 API Specification.
  3. Package java.sql. In: docs.oracle.com. Oracle, abgerufen am 8. November 2018 (englisch).

📚 Artikel Terkait di Wikipedia

Java-Laufzeitumgebung

Die Java-Laufzeitumgebung (englisch Java Runtime Environment, kurz JRE) ist die Laufzeitumgebung der Java-Technik. Mit ihr werden Programme (Java-Anwendungen)

Java (Programmiersprache)

Bestandteil der Java-Technologie – diese besteht grundsätzlich aus dem Java-Entwicklungswerkzeug (JDK) zum Erstellen von Java-Programmen und der Java-Laufzeitumgebung

Package

von zusammengehörenden Java-Klassen; siehe Java-Syntax – Pakete, Namen, Klassen, Schnittstellen im Fahrzeugbau ist das Package die geometrische und funktionale

Liste von Content-Management-Systemen

im 1. Januar 1 (englisch).  Hippo CMS Release Notes Overview – Enterprise Java Content management system – Hippo CMS. In: onehippo.org. Abgerufen im 1. Januar

Java-Technologie

Die Java-Technik (englisch Java Technology) ist eine ursprünglich von Sun (heute Oracle-Gruppe) entwickelte Sammlung von Spezifikationen, die zum einen

JavaFX

JavaFX ist ein Framework zur Erstellung plattformübergreifender Java-Applikationen. Es ist eine Java-Spezifikation von Oracle und setzt sich zum Ziel,

Solaris (Betriebssystem)

International geworden war. Es wurde mit der grafischen Benutzeroberfläche CDE und Java gebündelt und ab 1992 als „Operating Environment“ Solaris 2.x vermarktet

Annotation (Java)

verwendet werden. In Java SE 5.0 stehen sieben vordefinierte Annotationstypen zur Verfügung, die in den Paketen (Package) java.lang oder java.lang.annotation