Voor persistency in Java EE applicaties wordt veel gebruik gemaakt van ORM-frameworks, die de JPA standaard implementeren. JPA is een fijne standaard om mee te werken. Een van de mooie dingen is dat in de Java applicatie gewerkt wordt met Entities, die in feite gewone Java klasses zijn met extra JPA annotaties. Deze annotaties zorgen ervoor dat het ORM framework weet hoe de entities ge-mapped moeten worden op tabellen in de database.
De JPA standaard voorziet in standaard-mappings voor verschillende datatypes en ook in het mappen van foreign-key-relaties. Bij standaarden als deze is altijd sprake van een trade off tussen eenvoud en flexibiliteit. Bij JPA betekent dit, dat de standaard vooral gericht is op databases die volgens de ‘regelen der kunst’ zijn ontworpen. In de praktijk kom je natuurlijk nog wel eens databases tegen waar gebruik gemaakt wordt van ‘bijzondere constructies’. Dan vergt het soms wat meer puzzelwerk om daar een goede JPA-laag overheen te bouwen…