🔄 Losowy artykuł
Szlaki górskie Pociągiem dookoła Polski Podróże kulinarne Hotele-unikaty świata Parkingi przy lotniskach Łowiska Europy Campingi dla kamperów Imprezy — atrakcje w Polsce Poradnik pilota drona Wydarzenia i bilety Promocje bankowe Kamery na żywo Oferty Centrum Podróży Koliber Triper.pl Trip.FazaFM.com — plany podróży

Java Persistence API

Java Persistence API (skrót JPA) – oficjalny standard mapowania obiektowo-relacyjnego (ORM) firmy Sun Microsystems dla języka programowania Java.

Powstanie standardu

Standard JPA jest elementem standardu EJB 3.0 zdefiniowanym w JSR 220. Enterprise JavaBeans 3.0 został utworzony by zastąpić wersję poprzednią EJB 2.1, w której był inny model persystencji - CMP. Końcowa wersja standardu EJB 3.0 została wydana w maju 2006 roku.

W skład grupy ekspertów zajmujących się tworzeniem JPA wszedł twórca Hibernate: Gavin King. Oficjalny FAQ na stronach Sun podaje, iż na postać standardu miał wpływ nie tylko Hibernate, ale także JDO i TopLink.

Najnowszą wersję standardu 2.1 ukończono w ramach JSR 338

Opis technologii

JavaPersistence API jest standardem ORM dla języka Java. Z punktu widzenia programisty jest to możliwość operowania na obiektach - zwanych encjami – oraz zapisywania wyników operacji do relacyjnej bazy danych za pomocą obiektu EntityManager. Sposób w jaki obiekty i ich połączenia przekładają się na elementy bazy danych są definiowane za pomocą adnotacji lub dokumentów XML. Poza standardowym zestawem operacji udostępnianych przez obiekt EntityManager standard JPA definiuje język zapytań JPA Query Language podobny do SQL.

Implementacje w serwerach aplikacyjnych

Poza wzorcową implementacją standardu JPA - czyli serwera aplikacyjnego GlassFish, istnieje wiele innych implementacji wspomnianego standardu. Serwery aplikacyjne dostarczające usług ORM zgodnie ze standardem Java Persistence API:

Serwery aplikacyjne i ich implementacje JPA
Silnik implementujący JPA Serwer aplikacyjny Producent serwera
Hibernate EntityManager JBoss AS Red Hat
TopLink Oracle Application Server/OC4J Oracle Corporation
Kodo WebLogic Server Oracle Corporation
Open JPA Apache Geronimo, Open EJB Apache Software Foundation

Warto podkreślić, iż niektóre serwery aplikacyjne udostępniają możliwość zamiany dostawcy usług ORM zgodnie ze standardem JPA.

Zależności między JPA, EJB 3.0 oraz Java EE 5

JPA jest elementem standardu EJB 3.0, a ten z kolei wchodzi w skład Java EE 5. Usługi standardu EJB są zwykle realizowane przez specjalne środowisko uruchomieniowe zwane serwerem aplikacyjnym. Istnieje jednak możliwość korzystania z tego standardu w aplikacjach nie korzystających z serwera aplikacyjnego. Zapewnia ją, między innymi, implementacja JPA dostarczana w ramach projektu Hibernate.

Zobacz też

Linki zewnętrzne

ℹ Źródło: artykuł „Java Persistence API” w polskiej Wikipedii. Treść dostępna na licencji CC BY-SA 4.0; lista autorów w historii edycji. Wersja może się różnić od aktualnej na Wikipedii (kopia odświeżana okresowo).
💳 Revolut
Karta wielowalutowa do podróży — płacisz za granicą bez przewalutowań.
Odbierz kartę →
💰 ZEN.COM
Konta multiwalutowe i karty — płatności bez granic z poziomu aplikacji.
Sprawdź ZEN →
🌍 Wise
Przelewy za granicę po realnym kursie — bez ukrytych marż.
Wypróbuj Wise →
Linki polecające — obowiązują regulaminy usług.
FazaFM.com — radio i newsy Hrubek.pl — Hrubieszów blisko Ciebie Gorzkie Groszki — blog