Eine JavaFX-Desktop-Anwendung zur Verwaltung von Filmen und Serien mit personalisierten Empfehlungen, Streaming-Provider-Filterung und Watchlist-Funktionalität.
- Benutzerauthentifizierung – Registrierung und Login mit BCrypt-Passwort-Hashing
- TMDB-Integration – Zugriff auf umfangreiche Film- und Seriendaten über The Movie Database API
- Streaming-Provider-Filter – Filme/Serien nach verfügbaren Streaming-Diensten filtern (Netflix, Amazon Prime, Disney+, etc.)
- Personalisierte Empfehlungen – "Für dich"-Bereich basierend auf Genre-Präferenzen, Lieblingsschauspielern und Bewertungsmustern
- Watchlist & Favoriten – Inhalte merken und als Favoriten markieren
- Genre-Filter – Inhalte nach Genres durchsuchen
- Suchfunktion – Filme und Serien direkt suchen
- Trailer-Wiedergabe – Trailer direkt in der App anschauen
- Detailansichten – Umfangreiche Informationen zu Filmen und Serien
| Komponente | Technologie |
|---|---|
| Frontend | JavaFX 21 |
| Build Tool | Maven |
| Datenbank | MySQL |
| API | TMDB (The Movie Database) |
| Passwort-Hashing | BCrypt |
| JSON-Parsing | Gson |
- Java 22 oder höher
- Maven 3.8+
- MySQL Server
- TMDB API Key
-
Repository klonen
git clone https://github.com/Tris488/moive_manager.git cd moive_manager -
Datenbank einrichten
- MySQL-Datenbank erstellen
- Verbindungsdaten in
DatabaseHandler.javaanpassen
-
Abhängigkeiten installieren
mvn clean install
-
Anwendung starten
mvn javafx:run
src/main/java/moive_manager/moive_manager/
├── API/ # TMDB API Handler und Response-Klassen
├── components/ # UI-Komponenten (MovieCard, DetailViews)
├── database/ # Datenbankzugriff (DAO, Queries)
├── errors/ # Fehlerbehandlung
├── models/ # Datenmodelle (Movie, Serie, User, etc.)
├── service/ # Business-Logik (Watchlist, Favorites, Recommendations)
├── HelloApplication.java # Haupteinstiegspunkt
├── LoginController.java # Login-Logik
├── RegisterController.java # Registrierungs-Logik
└── MovieSuggestionsController.java # Hauptansicht-Controller
Der Empfehlungsalgorithmus berechnet Scores basierend auf:
- Genre-Präferenzen (50%) – Basierend auf Favoriten
- Schauspieler-Präferenzen (35%) – Häufig vorkommende Schauspieler in Favoriten
- Bewertungsähnlichkeit (15%) – Nähe zur durchschnittlichen Bewertung der Favoriten
Dieses Projekt ist ein Schulprojekt im Rahmen der Ausbildung zum Fachinformatiker für Anwendungsentwicklung.
Hinweis: Dieses Projekt verwendet die TMDB API, ist aber weder von TMDB unterstützt noch zertifiziert.