Eigenen Ant-Task schreiben Kochrezept - Ant.jar zum Build-Path hinzufügen Klasse schreiben, die von Task erbt ANT-Script ergänzen - ANT-Script ausführen - Task parametrisieren durch „setter-Methoden“: Man nutzt Continuous Integration Server wie Jenkins (www.jenkins-ci.org), um Build-Scripte automatisierte und geplant auszuführen. Diese Werkzeuge beinhalten ein „Reporting“ d.h. geben den Build-Status und die Ergebnisse wider. Persistenz OR-Mapping 1. Fall: eine Klasse Pro Klasse eine Tabelle. Jedes Attribut in eine Spalte. Nicht bei komplexen Objekten: 2. 1:1 Beziehung 1. Möglichkeit: Zwei Tabelle mit FK in Tabelle Buch, der auf PK von Tabelle Verlag zeigt. 2. Möglichkeit: Eine Tabelle, die die Attribute der zweiten Klasse (hier name und registernr). 3. 1:n Beziehungen Zwei Tabellen: 1. Buch: FK auf PK der Tabelle Verlag Buch Isbn (PK) Titel FK_Verlag Verlag Name Registernr (PK) 4. N:m Beziehungen Drei Tabellen: 1. Autor 2. Buch 3. Schlüsseltabelle Schlüsseltabelle: FK_autor 4. Interfaces Interfaces werden nicht in der DB repräsentiert FK_Buch 5. Vererbungsbeziehungen Variante 1: 1 Tabelle Person Nachname Vorname gelesenSeiten Typ Hedtstück Uli AUTOR Hege 123 LESER Variante 2: 2 Tabellen Leser Nachname geleseneSeiten Autor vorname nachname Variante 3: 3 Tabellen Person PK 1 2 nachname Hedtstück Hege Autor Vorname Uli FK_person 1 Leser geleseneSeiten FK_person 123 2 Vor- und Nachteile der drei Varianten Vorteil Nachteil 1 Tabelle Einfach, keine JOINS 2 Tabellen Null-Prüfung möglich, einfach Identifikation der Klassen Keine Null-Werte Zusätzliche Spalte, um Datentyp prüfen zu können. Keine Null-Prüfung möglich Wartbarkeit 3 Tabellen Java Collection Framework (viele Tabellen), viel JOINS Performanz!?!