3 - Grundaufbau von Serveranwendungen

Am Ende dieser Vorlesung sollten wir alle eine einfache Todo-Webanwendung mit Spring entwickelt haben.

Man soll mittels einer Rest-Api Todo-Einträge anlegen, verwalten und löschen können.

Basics Domain Driven Design

Entitäten

  • Besitzen eine eigene Identität

Repositories

  • Anlegen, Verändern, Lesen und Löschen von Entitäten (CRUD: Create Read Update Delete)

Services

  • Abstraktion für Use-Cases
  • bedient mehrere Repositories in einer Transaktion

Controller

  • Dient zur Serialisierung von Daten für andere Schnittstellen

Fachlichkeit der TODO-App

Entity-Relationship-Diagramm

Ein ERM bildet die Relation der Daten in der Datenbank ab.
ERM

Use-Case-Diagramm

Ein UCD bildet die möglichen Anwendungsfälle der Software ab.
UCD

Spring Boot bildet DDD ab

Entity

TodoList und TodoListEntry: (getter und setter wurden weggelassen)


  • Repository
  • Service
  • Controller

Implementieren der Fachlichkeit

Die Implementierung findet ihr im folgenden Repository im Branch todoListWithEntries:

https://github.com/klg71/java_springboot_blueprint/tree/todoListWithEntries

Dependency Injection

https://de.wikipedia.org/wiki/Dependency_Injection