JPA-query's
JPA-query's: afleiding via methodenaam, @Query met JPQL, native query's, paginering, sortering
1Wat is JPQL?
Wat is JPQL?
Antwoord
JPQL (Java Persistence Query Language) is een objectgeoriënteerde taal die JPA-entiteiten bevraagt in plaats van databasetabellen. Anders dan native SQL gebruikt JPQL klasse- en eigenschapsnamen, waardoor de objectabstractie behouden blijft en de overdraagbaarheid tussen verschillende databasesystemen wordt vergemakkelijkt. Gebruik JPQL standaard, tenzij specifieke SQL-functionaliteit nodig is.
2Welke annotatie maakt het uitvoeren van een aangepaste JPQL- of SQL-query mogelijk?
Welke annotatie maakt het uitvoeren van een aangepaste JPQL- of SQL-query mogelijk?
Antwoord
De annotatie @Query maakt het mogelijk om aangepaste query's rechtstreeks in Spring Data JPA-repositories te definiëren. Standaard kan ze JPQL bevatten, of native SQL als het attribuut nativeQuery op true is gezet. Deze annotatie biedt meer flexibiliteit dan query methods die uit de methodenaam worden afgeleid, vooral voor complexe query's met joins of subquery's.
3Hoe bind je een methodeparameter aan een @Query?
Hoe bind je een methodeparameter aan een @Query?
Antwoord
De annotatie @Param maakt het mogelijk om parameters die in @Query-query's worden gebruikt expliciet te benoemen. Deze aanpak is leesbaarder en robuuster dan het gebruik van geïndexeerde posities, vooral tijdens het refactoren van code. De annotatie is verplicht voor benoemde parameters in JPQL en wordt zelfs voor native SQL-query's aanbevolen om de onderhoudbaarheid te verbeteren.
Welke clausule maakt in JPQL het filteren van resultaten mogelijk?
Wat is het belangrijkste verschil tussen JPQL en native SQL?
+27 gespreksvragen
Andere Spring Boot-sollicitatieonderwerpen
Spring Core - IoC & DI
Spring Boot Auto-Configuration
Spring Boot Starters
Application Properties & YAML
Logging met SLF4J & Logback
Spring Boot DevTools
Spring MVC Basics
Spring REST Controllers
Request & Response Handling
Uitzonderingsafhandeling
Bean Validation
Spring Data JPA-basis
JPA-entiteiten en relaties
Spring Data Repositories
Spring Security Basis
Spring Boot Actuator
Unit testing met JUnit & Mockito
Spring Boot testen
Profiles en Environment
RestTemplate en WebClient
Async & Scheduling
Caching met Spring
Spring WebFlux (Reactive)
Spring-transacties
Geavanceerde authenticatie en autorisatie
JWT & stateless beveiliging
OAuth2 & Authorization Server
Spring Boot en Docker
Microservices met Spring
Spring Cloud Config
Prestatie-optimalisatie
GraalVM Native Images
Beheers Spring Boot voor je volgende gesprek
Krijg toegang tot alle vragen, flashcards, technische tests, code review-oefeningen en gespreksimulatoren.
Begin gratis