Ktor Server: Datenbank-Schicht (Exposed ORM) #41
Labels
No labels
block-planning
bug
documentation
duplicate
enhancement
feature
good first issue
help wanted
infrastructure
invalid
planning
priority:high
priority:low
question
refactoring
status:backlog
status:done
status:in-progress
status:todo
tech-decision
test
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference: bollwerkadmin/bollwerk#41
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Feature: Server-seitige Datenbankschicht mit Exposed ORM
Part of: #11
Depends on: #40
Ziel
Der Ktor-Server hat eine persistente Datenbankschicht (H2 file-based) mit Exposed ORM, die das komplette Inventar speichern und abrufen kann.
Scope
InventoryRepositoryfuer CRUD-ZugriffTechnische Hinweise
jdbc:h2:file:./data/krisenvorrat) - persistent, kein externer DB-Server noetigtransaction {}Akzeptanzkriterien
InventoryRepositorykann Inventar speichern und ladenAbgeschlossen (2025-05-14)
Zyklen: 1
Tests: ✅ 6 Tests (4 Repository + 2 Application), 0 Fehler
Implementierte Artefakte
Tables.kt: Exposed-Tabellendefinitionen (Categories, Locations, Items, Settings) mit Foreign KeysDatabaseFactory.kt: H2 file-based DB-Initialisierung, parametrisiert fuer TestsInventoryRepository.kt: CRUD mit saveInventory/loadInventory, DTO-MappingInventoryRepositoryTest.kt: 4 Tests (leere DB, Round-Trip, Ueberschreiben, nullable Felder).gitignore: H2-Datenbankdateien ausgeschlossenAbweichungen