Dieses Projekt ist eine Java-Konsolenanwendung, die entwickelt wurde, um die Verwaltungsprozesse einer Universitätsbibliothek zu modernisieren. Durch den Einsatz von Hibernate ORM (Objektrelationale Abbildung) anstelle von herkömmlichem JDBC werden alle Datenbankoperationen streng nach den Prinzipien der objektorientierten Programmierung (OOP) durchgeführt.
Das System basiert auf einer Schichtenarchitektur (Layered Architecture), um Wartbarkeit und Clean-Code-Prinzipien zu gewährleisten. Die Data Access Object (DAO)-Schicht, die Geschäftslogik und die Entity-Klassen sind strikt voneinander entkoppelt.
Hauptmerkmale:
ORM-Implementierung: Verwendung von Hibernate Entities und Annotationen (@OneToOne, @OneToMany) anstelle von rohen SQL-Abfragen.
Datenbankbeziehungen: Sicherstellung der relationalen Integrität zwischen Studenten, Büchern und Ausleihvorgängen.
Bestandsmanagement: Dynamische Verwaltung des Buchstatus (AVAILABLE/BORROWED) und der Rückgabeprozesse.
Fehlerbehandlung: Implementierung einer benutzerdefinierten Fehlerbehandlung für Datenbankbeschränkungen (Unique Constraints).