Databases Reference
In-Depth Information
In Code, der auch nur annähernd produktiv arbeitet, gehen wir selbstverständlich
nicht so sportlich vor, sondern verwenden eine geeignete Fehlerbehandlung. Wir
vereinfachen das Exception-Handling in unseren Beispielen, um den Blick für die
JDBC-Details frei zu haben.
Der folgende Code wird übersetzt, wirft aber zur Laufzeit eine Exception.
public class SimpleJDBC{
public static void main(String[] args) throws Exception{
Class.forName("org.h2.Driver");
}
}
Die Java Virtual Machine (JVM) kennt die Klasse org.h2.Driver nicht. Wir wis-
sen zwar, wo wir die zugehörige jar -Datei finden, die JVM aber nicht. Für diese
Informationen ist die Umgebungsvariable CLASSPATH zuständig. Am bequems-
ten ist es, wenn wir den CLASSPATH gleich beim Aufruf der JVM 3 setzen:
java -cp .:absoluterPfad/h2-1.2.137.jar SimpleJDBC
Dabei bezeichnet absoluterPfad den absoluten Pfad des bin -Verzeichnisses
unserer H2-Installation. Die virtuelle Maschine sucht jetzt im aktuellen Ver-
zeichnis und in dem genannten jar -Archiv nach Java-Klassen. Bei Microsoft-
Betriebssystemen trennen wir die Verzeichnisnamen mit einem Semikolon anstatt,
wie hier unter Unix, mit einem Doppelpunkt. Unser kleines Java-Programm sollte
jetzt problemlos laufen.
Da wir die meisten Klassen, die wir für die Arbeit mit JDBC benötigen, im Paket
java.sql finden, empfiehlt sich ein
import java.sql. *
am Anfang unseres Java-Programms.
Die Java-Beispiele in diesem Kapitel zeigen die grundsätzliche Funktionsweise
von JDBC. Um einen guten Überblick sicherzustellen, wurden sie zum Teil gering-
fügig vereinfacht. Auf ein Exception-Handling wurde aus genau diesem Grund
verzichtet. Teilweise wird der abgedruckte Code also nicht vom Compiler über-
setzt. Auf der Webseite zum Buch findet man diese Beispiele in einer syntaktisch
korrekten und lauffähigen Version.
18.4
Gute Verbindungen sind alles
Bevor wir SQL-Anweisungen zum RDBMS schicken, brauchen wir - wie auch
im SQL-Dialog - eine Verbindung. Dazu gibt es einen eigenen Datentyp mit dem
selbsterklärenden Namen Connection . Zu diesem Typ gehört kein Konstruktor,
3
Die JVM starten wir dabei, wie bereits in Abschnitt 2.5 erläutert, in einem Terminal-Fenster.
 
Search WWH ::




Custom Search