Java Persistence API

application programming interface

Le Java Persistence API, talvolta riferite come JPA, sono un framework per il linguaggio di programmazione Java che si occupa della gestione della persistenza dei dati di un DBMS relazionale nelle applicazioni che usano le piattaforme Java Platform, Standard Edition e Java Enterprise Edition.

Le Java Persistence API sono state originate come parte del lavoro del JSR 220 Expert Group. Le JPA 2.0 sono il lavoro del JSR 317 Expert Group.

Descrizione

modifica

La persistenza, in questo contesto, copre tre aree:

  • le API stesse, definite nel package javax.persistence;
  • il linguaggio Java Persistance Query Language (JPQL);
  • la mappatura tra lo schema relazionale della base dati e le Entity, classi annotate che rappresentano oggetti della base dati, tale mappatura viene descritta anche con il termine di object-relational mapping.

Molti programmatori Java enterprise usano oggetti persistenti “leggeri” forniti da framework open source o Data Access Object (DAO) al posto degli entity beans. Gli entity beans e gli enterprise beans hanno la reputazione di essere troppo “pesanti” e complicati, e si ha l'impressione di poterli usare solamente in applicazioni server Java EE. Così molte delle funzioni dei framework di persistenza di terze-parti sono state incorporate nelle Java Persistence API, e a partire dal 2006 progetti come Hibernate (versione 3.2) e TopLink Essentials (versione Open-Source) hanno cominciato ad implementare le Java Persistence API.

La data di rilascio finale delle specifiche JPA 1.0 è stata l'11 Maggio 2006 come parte del Java Community Process JSR 220. Le specifiche JPA 2.0 sono state rilasciate il 10 Dicembre 2009 ( La piattaforma Java EE 6 richiede le JPA 2.0 [1].) Le specifiche JPA 2.1 sono state rilasciate il 22 aprile 2013 ( Java EE 7 richiede le JPA 2.1 [2].)

  1. ^ JavaEE 6 tutorial, su docs.oracle.com, Oracle.
  2. ^ JavaEE 7 tutorial, su docs.oracle.com, Oracle.

Collegamenti esterni

modifica
  Portale Informatica: accedi alle voci di Wikipedia che trattano di informatica
Controllo di autoritàGND (DE7702016-9