Module 4: Java Persistence API Flashcards
Wat is een relationele database?
Een database dat hun data opslaat in tabellen die onderling relaties met elkaar hebben.
Wat is een Primary Key?
Een eigenschap van een tabel waarmee een rij geidentificeerd kan worden.
Wat is een verplicht eigenschap van een tabel?
Hij moet een Primary Key (PK) hebben
Over hoeveel kolommen mag een Primary Key bestaan?
op een of meerdere kolommen
Waarom tabellen indexen?
Hiermee is het mogelijk om het databasesysteem te optimaliseren door data sneller te kunnen ophalen.
Wat is een stored procedure?
Stored procedures zijn opgeslagen query’s die in de databaselaag zelf zitten. Deze kunnen vervolgens aangeroepen worden vanuit andere query’s of op basis van een preconditie.
Wat is een view?
Views zijn opgeslagen queries die zich gedragen als tabellen. Hiermee kun je bijvoorbeeld data uit diverse tabellen samenbrengen in een nieuwe (virtuele) tabel.
Wat is een schema?
Tabellen (met indexen en relaties), stored procedures en views worden samen ondergebracht in een schema.
Een schema kan worden gebruikt om de data te scheiden en bijvoorbeeld authorisatie toe te passen.
Waar staat SQL voor?
Structured Query Language
Waar staat JDBC voor?
Java Database Connectivity
Waar wordt JDBC voor gebruikt?
Om een verbinding met een database te maken.
Waar wordt SQL voor gebruikt?
Om data uit een database op te halen middels queries
Hoe kunnen we een verbinding maken met een Database binnen Java? (welke klasse en functie?)
Door gebruik te maken van JDBC en de klasse DriverManager met de functie getConnection().
Waarom is de standaard JDBC-implementatie niet toereikend in de praktijk?
Een relationeel model valt niet direct 1:1 over te nemen naar het object model in een applicatie.
(Dit noemen we ook wel object-relational mismatch)
Wat zijn de onvolkomendheden van Object-relational mismatch?
- Granulariteit
- Overerving
- Identiteit
- Relaties
- Navigatie
Wat is ORM en waar staat het voor?
Object-relational mapping (ORM)
Met een ORM wordt automatisch gemapped tussen het objectenmodel en het databasemodel. Zodra een query op de DB wordt uitgevoerd, zorgt een ORM er voor dat het resultaat van je query omgezet wordt naar een of meerdere Java-objecten.
Welke specificatie heeft Java voor de implementatie van een ORM?
Java Persistence API (JPA).
Er zijn verschillende implementaties die aan deze specificatie voldoen.
Hoe worden JPA implementaties ook wel genoemd?
JPA-providers
Hoe wordt een nieuwe entiteit toegevoegd aan de Persistence Context?
Middels de persist() methode
Hoe zorgen we ervoor dat een entiteit tijdelijk uit de Persistence Context verwijderd wordt?
Een entiteit kun je ook detachen met de detach-methode. Dit zorgt ervoor dat de context niet langer naar wijzigingen kijkt. We noemen de entiteit dan gedetacht.
Hoe zorgen we ervoor dat een gedetachte entiteit weer wordt gemanaged fdoor de Persistence Context (PC)?
Zodra je een gedetachte entiteit weer wilt meenemen in de context, kun je deze mergen. Vanaf dit moment is de entiteit weer gemanaged. Dit kun je doen met de merge-methode.
Hoe verwijderen we een entiteit uit de Persistence Context (PC)?
Als je een entiteit permanent uit de context wilt verwijderen, gebruik je de remove-methode. Dit zorgt ervoor dat de entiteit wordt verwijderd en eventuele relaties worden verbroken.
Uit welke package komen de meeste JPA klassen?
javax.persistence
De mapping van objecten naar entiteiten wordt gedaan in de ____
persistence unit