Kite2Server ist ein Spring Boot (Java) Backend-Projekt mit REST-APIs für Datenverwaltung und GPT-Integration.
Kurzüberblick
- Java: 17
- Spring Boot: 3.x (Parent im
pom.xml3.1.0) - Hauptklasse:
com.hhn.kite2server.Kite2ServerApplication - Build: Maven (
./mvnw/mvnw.cmdauf Windows)
Inhalt dieser README
- Voraussetzungen
- Build & Start
- Konfiguration
- Wichtige Module / Controller
- Troubleshooting
- JDK 17 installiert und in PATH
- Maven (oder das mitgelieferte Wrapper-Skript
mvnw/mvnw.cmd) - PostgreSQL (oder eine konfigurierte Datenbank)
Auf Windows (Powershell):
# Build
.\mvnw.cmd clean package
# Starten (erzeugte JAR im Ordner target, finalName = Kite2Server)
java -jar .\target\Kite2Server.jar
# Alternativ direkt mit dem Maven Spring Boot Plugin (zum Entwickeln)
.\mvnw.cmd spring-boot:runAuf Unix/macOS:
./mvnw clean package
java -jar ./target/Kite2Server.jarFür Tests:
.\mvnw.cmd testZentrale Konfiguration liegt in src/main/resources/application.yml. Wichtige Punkte:
server.port: Standard 8080spring.datasource.*: JDBC URL, Nutzer und Passwort (aktuell Beispielwerte — unbedingt anpassen)openai.api.keybzw. Umgebungsvariablen: Das Projekt nutztspring-dotenv— sensitive Keys sollten in einer.envliegen oder als Umgebungsvariablen gesetzt werden. Wichtige Variablen:OPENAI_API_KEY(API-Key für GPT)OPENAI_MODEL(z. B.gpt-4o)API_USERNAME/API_PASSWORD(falls genutzt)
- SSL-Keystore:
src/main/resources/keystore/keystore.p12(optional; imapplication.ymlals Kommentar vorhanden)
Wichtig: Die im Repository vorhandenen Beispielpasswörter sind Platzhalter. Niemals sensible Daten ins Repo committen.
Das Projekt ist in Pakete unter com.hhn.kite2server strukturiert. Wichtige Subpakete und Controller (nicht vollständig):
ai_review—AiReviewController,AiReviewService,AiReviewRepositorydata—DataController,DataService,DataRepositorynovelreview—NovelReviewController,NovelReviewServicegpt—GptController,GptService,GptConfigemail— Services für E-Mail-Erzeugung und Versandexpert_feedback_*— Endpunkte für Experten-Feedback (Fragen & Antworten)
Die Hauptklasse ist com.hhn.kite2server.Kite2ServerApplication.
- Actuator ist aktiviert (exposed endpoints konfigurierbar in
application.yml) - Access-Logs sind in
application.ymlkonfiguriert (Tomcat accesslog)
- Datenbankverbindung schlägt fehl: Prüfe
spring.datasource.url, Nutzer, Passwort und ob Postgres erreichbar ist. - Mailversand: Konfiguration unter
spring.mailinapplication.ymlprüfen (Host, Port, Credentials) - TLS/SSL: Falls mit SSL gestartet werden soll,
server.ssl.enabled: truesetzen undkey-store/key-store-passwordkonfigurieren.
- Branch-Workflow: Feature-Branches, PRs gegen
main. - Code-Format: Projekt nutzt Standard-Java-Formatierung; Nutzt Lombok in Teilen des Codes.
- Bitte keine Secrets committen — stattdessen
.envoder CI-Secret-Store verwenden.
- Unit- und Integrationstests lassen sich mit
./mvnw testbzw.mvnw.cmd testausführen.
Keine Lizenzdatei im Repository. Falls nötig, bitte eine passende Lizenz (z. B. MIT/Apache-2.0) hinzufügen.
Bei Fragen: Repository-Maintainer oder Projektverantwortliche im Projekt kontaktieren.
Kurzzusammenfassung: Diese README bietet einen schnellen Einstieg zum Bauen, Starten und Konfigurieren des Projekts. Passe application.yml und Umgebungsvariablen an deine Umgebung an, insbesondere DB- und API-Keys.