prev up next

JDBC

JDBC (Java Database Connectivity) ist ein Java-API (Application Programming Interface) zur Ausführung von SQL-Anweisungen innerhalb von Java-Applikationen und Java-Applets. Es besteht aus einer Menge von Klassen und Schnittstellen, die in der Programmiersprache Java geschrieben sind.

Ein JDBC-Programm läuft in drei Phasen ab:

  1. Treiber laden und Verbindung zur Datenbank aufbauen,
  2. SQL-Anweisungen absenden,
  3. Ergebnisse verarbeiten.

Der folgende Quelltext zeigt ein einfaches Beispiel für diese Schritte:

Class.forName ("sun.jdbc.odbc.JdbcOdbcDriver");           // mit Treiber
Connection con = DriverManager.getConnection              // Verbindung
                 ("jdbc:odbc:dbs","erika","mustermann");  // herstellen

Statement stmt= con.createStatement();                    // Query
ResultSet rs  = stmt.executeQuery                         // ausfuehren
                ("select * from Professoren"); 

while (rs.next()){                                        // Ergebnisse
  int x    = rs.getInt("persnr");                         // verarbeiten
  String s = rs.getString("name");
  System.out.println("Professor "+s+" hat die Personalnummer "+x);
}

Abbildung 9.9 zeigt die von Listing 9.3 erzeugte Ausgabe einer Java-Applikation auf der Konsole.


Abbildung 9.9: Ausgabe einer Java-Applikation

Listing 9.3: Quelltext der Java-Applikation ShowJdbc.java

Listing 9.4 zeigt den Quelltext einer HTML-Seite mit dem Aufruf eines Java-Applets. Listing 9.5 zeigt den Quelltext der im Applet verwendeten Javaklassen. Damit der Applet-Code Kontakt zur Datenbank aufnehmen kann, muß auf dem Rechner, auf dem der Browser läuft, der ODBC-Treiber samt Datenquelle eingerichtet sein. Daher eignet sich diese Lösung nur für Intra-Netze mit zentraler Systemadministration. Ferner darf das Applet nur eine Socket-Verbindung aufbauen zu Rechnern, von denen es gezogen wurde. Daher müssen Web-Server und Datenbankserver auf demselben Rechner liegen.

Listing 9.4: Quelltext einer HTML-Seite zum Aufruf eines Applets

Aufruf einer HTML-Seite mit Java-Applet

Listing 9.5: Quelltext der Java-Klassen vom Java-Applet


prev up next