Lesplan module 00
Inleiding
In het opleidingsprogramma voor software ontwikkelaars is behoefte aan een inleiding tot Object Relationele Mapping (ORM) gebaseerd op de Java Persistence API (JPA). Dit is de studiegids voor deze inleiding.
Met deze inleiding wordt beoogd dat de ontwikkelaar weet waarvoor ORM gebruikt wordt, waar in de architectuur zich dit bevindt en de betreffende ORM mappings kan lezen.
De volgende onderwerpen komen aan bod:
-
❏ wat is ORM, wat is JPA
-
❏ waar zit dit in de architectuur
-
❏ hoe doe je ORM
-
❏ wat zijn de JPA annotaties
-
❏ wat zijn overervingstrategieën
-
❏ wat zijn modelleringstrategieën voor overerving en relaties
-
❏ wat zijn performance overwegingen bij ORM
Deze course is met name bedoeld voor ontwikkelaars die in hun opleiding geen vak gevolgd hebben over ORM.
Voorkennis
Vereiste voorkennis is dat de ontwikkelaar kennis heeft van de volgende onderwerpen:
-
Java classes, fields, overerving
-
Databases: tabellen, kolommen, kolomtypes, foreign keys, constraints
-
UML: class diagram
De course
Object-Relationele Mapping wordt gebruikt om de gegevens die in de database staan (automatisch) te vertalen van en naar Java objecten. Hiermee wordt een behoorlijke versnelling van het ontwikkelproces bereikt.
Object-Relationele Mapping wordt in de Java wereld geïmplementeerd door de Java Persistence API (JPA), en Hibernate is daar een specifieke vorm van. Binnen Topicus Onderwijs wordt Hibernate gebruikt voor het mappen tussen de database en de Java code. In deze cursus staat Hibernate dan ook centraal.
Competenties
Je leert in deze cursus de volgende zaken:
-
waar in de applicatie architectuur moet ik ORM plaatsen
-
wat is ORM, JPA en Hibernate
-
wat doet ORM
-
hoe map je van Java naar SQL en vice versa met JPA annotaties
-
hoe persisteer en verwijder je objecten uit de database
-
hoe schrijf je in Java queries met JPA
-
waarom en hoe beperk je het aantal resultaten
-
hoe kan je class hiearchieën vertalen naar tabellen
-
hoe kan je relaties tussen objecten vertalen naar tabellen
-
caching van resultaten voor snellere applicaties
Materialen
Er is geen recent goed boek beschikbaar voor JPA 2.1 zodat je het moet hebben van online cursussen en stackoverflow antwoorden. [Oracle] publiceert wel een online "introductie" die goed kan dienen als referentiemateriaal. Er is wel een goed beoordeelde JPA 2.1 cursus op PluralSight beschikbaar via [agonc].
-
[] Antonio Goncalves. Java Persistence API (JPA) 2.1. 2014.
-
[] Oracle. Introduction to the Java Persistence API. 2014.
Volgende module »