Die Aufgabe
Aufgabe 7: JDBC
Implementieren Sie die Modellklasse TerminDB nun in Java auf der Basis von JDBC. Eine einfache Bean-Klasse TerminDTO mit den notwendigen Attributen und Methoden sei bereits vorhanden, mit dem Konstruktor TerminDTO(int tid, Date datum, String txt, int rid). Ebenso vorhanden ist etwas Code der Klasse TerminDB.
Nur die Methode getTerminFromRubrikDatum ist zu implementieren! Sie liefert alle Termine der Rubrik rid ab dem Datum datum.
class TerminDB { private static final Logger log = LogManager.getLogger(TerminDB.class); // Alle Termine der Rubrik rid ab dem Datum datum public static List<TerminDTO> getTerminFromRubrikDatum (Connection cn, int rid, Date datum) { String sql = try } catch (SQLException e) { } }}Die Aufgabe ist aus dem Gedächtnisprotokoll nachgebaut. Das Protokoll sagt nur: Die vorherige Aufgabe ist mit Java und JDBC zu wiederholen, und nur die Methode getTerminFromRubrikDatum ist umzusetzen. Aufgabentext und Rahmencode haben wir nach Klausur 2, Aufgabe 7 gebaut. Punkte nennt das Protokoll nicht.
In eigenen Worten: Die Methode bekommt eine offene Verbindung, eine Rubrik-Nummer und ein Datum. Sie liefert alle Termine dieser Rubrik ab diesem Datum als Liste. Ein DTO (Data Transfer Object) ist eine einfache Klasse, die nur Daten trägt: hier einen Termin mit seinen vier Werten.
try (…) { … } schließt die Ressource in der Klammer am Ende selbst.- Den Kopf der Methode lesen.
- Die Ergebnisliste anlegen.
- SQL schreiben, Statement öffnen, Parameter setzen.
- Das Ergebnis Zeile für Zeile lesen.
- Den Fehler abfangen und die Liste zurückgeben.