In Programmierung 3 entwickelte ich einen eigenen REST-Webservice für einen Kopierservice von Retro-Spiel-Cartridges. Der Server wurde mit Java 21 umgesetzt und kommuniziert über JDBC mit einer MySQL-Datenbank. Registrierte Nutzer können Spiele „einsenden“ und herunterladen, während ein Administrator die Daten verwaltet.
Die REST-Schnittstellen implementierte ich ohne Spring mit einem eingebetteten Server. Die Kommunikation läuft JSON-basiert, die Umwandlung der Daten übernahm Jackson. Der Server kann mehrere Anfragen gleichzeitig bearbeiten.
Ein wichtiger Teil war mein eigener DB-Initializer. Beim Start prüft das Programm, ob die Datenbank bereits existiert (z. B. in phpMyAdmin). Falls nicht, wird sie automatisch erstellt und per SQL-Import mit Startdaten befüllt. Fehler habe ich dabei gezielt über Exceptions abgefangen.
Zusätzlich entwickelte ich einen JavaFX-Client, der die Daten vom Server abruft und übersichtlich darstellt. Durch das Projekt habe ich mein Verständnis für REST, Datenbanken und den Aufbau einer vollständigen Client-Server-Anwendung deutlich verbessert.



