Hallo Robert,

danke für Deine Tips. Ich habe mir jetzt folgendermaßen beholfen. Ich weiß jetzt zwar nicht wie "elegant" das ist, aber es funktioniert zumindest. Vor dem Zugriff auf den SQL-Server führe ich folgendes aus:

Code:
    if (validateConnection(sq_conn) == false) {
                  // Verbindung zur SQL-Datenbank aufbauen
                  String sq_driver = "com.microsoft.jdbc.sqlserver.SQLServerDriver";
                  String sq_url = "jdbc:microsoft:sqlserver://" + sq_server + ":1433;databaseName=" + sq_database;
                  Class.forName(sq_driver);
                  sq_conn = DriverManager.getConnection(sq_url, sq_user, sq_pwd);

                  // Statement-Objekte erzeugen
                  sq_stmt_table = sq_conn.createStatement();
                  sq_stmt_in = sq_conn.createStatement();
                  sq_stmt_out = sq_conn.createStatement();
                  sq_stmt = sq_conn.createStatement();
                  }

    //
    // Prüfen, ob die Verbindung zum SQL-Server besteht
    //
    public static boolean validateConnection(Connection sq_conn) {

        try{
            sq_conn.getMetaData();
            }

        catch(Exception e) {
            return false;
            }
        return true;
    }
Die Sache mit den Connection Pools müsste ich mir auch mal genauer anschauen. Hab auch gelesen, dass es damit funktionieren müsste. Hab aber auf die Schnelle kein Beispiel gefunden wie ich das bei mir einbauen müsste.

Gruß,
KM