Voorbereiding
1. Service Laag
1a applicatie architectuur
Tot nu toe hebben we alleen gebruik gemaakt van Controllers en Repositories. Als de interactie tussen Controllers en Repostitories ingewikkelder wordt, dan is het gebruikelijk om een Service toe te voegen.
Bekijk deze video waarin een simpel voorbeeld wordt gegeven van een applicatie die in drie lagen gebruikt wordt.
https://www.youtube.com/watch?v=D44si7o4ndg
In de video wordt van Spring Data JPA gebruik gemaakt in plaats van Spring Data JDBC maar de principes zijn hetzelfde. Je kunt de JPARepository in de video zien als de CrudRepository.
1b. korte oefening met een service
In deze oefening verplaats je een stuk code uit de controller naar een nieuwe service.
✏️ De oefening is te vinden in <jouw repo van week 4>/oefeningen/les-2/voorbereiding/onderdeel1.md
2. Custom Queries en Projecties
2a. korte intro lezen over custom queries
Lees dit stukje over custom queries en projecties van Thorben Janssen
In de les werken we alleen met DTO's, dus je kunt de vergelijking met Object[] negeren.
2a. Korte oefening met custom queries
In deze oefening voeg je een DTO, een derived query en een custom query toe aan de applicatie uit oefening 1.
✏️ De oefening is te vinden in <jouw repo van week 4>/oefeningen/les-2/voorbereiding/onderdeel2.md