Любое применение предпринимательства выполняет деятельности базы данных путем хранить и восстановлять более обширное количество данных. Несмотря на все доступные технологии для управления запоминающими устройствами, программисты нормально борются для того чтобы выполнить деятельности базы данных эффективно.
Вообще, проявители Java используют серии Кода, или используют собственнические рамки для того чтобы взаимодействовать с базой данных, тогда как использующ JPA, тягота взаимодействовать с базой данных уменьшают значительно. Она формирует мост между моделями предмета (программой Java) и реляционными моделями (программой базы данных).
Реляционные предметы представлены в таблитчатом формате, пока модели предмета представлены в соединенной диаграмме формата предмета. Пока и восстановляющ модель предмета от реляционной базы данных, некоторое рассогласование происходит должно к следующим причинам:
Степень детализации: Модель предмета имеет больше степени детализации чем реляционная модель.
Подвиды: Подвиды (унаследование середин) не поддержаны всеми типами реляционных баз данных.
Тождественность: Как модель предмета, реляционная модель не подвергает действию тождественность пока пишущ равность.
Ассоциации: Реляционные модели не могут определить множественные отношения пока смотрящ в модель домена предмета.
Навигация данных: Навигация данных между предметами в сети предмета различна в обеих моделях.
Персистирование API Java собрание типов и методов упорно для того чтобы хранить более обширное количество данных в базу данных которая обеспечена Oracle Корпорацией.
Для уменьшения тяготы Кодов сочинительства для реляционного управления предмета, программник следовать рамки провайдером ` JPA', которые позволяют легкому взаимодействию с примером базы данных. Здесь необходимые рамки приняты сверх JPA.
Ранние версии EJB, определенный слой персистирования совместили с слоем логики дела используя интерфейс javax.ejb.EntityBean.
Пока вводил EJB 3,0, слой персистирования был отделен и определил как JPA 1,0 (персистирование API Java). Спецификации этого API были выпущены вместе с спецификациями JAVA EE5 11-ого мая 2006 используя JSR 220.
JPA 2,0 было выпущено с спецификациями JAVA EE6 10-ого декабря 2009 как часть процесса JSR 317 общины Java.
JPA 2,1 было выпущено с спецификацией JAVA EE7 22-ого апреля 2013 используя JSR 338.
JPA открытый источник API, поэтому различные поставщики предпринимательства как Oracle, Redhat, затмение, etc. обеспечивают новые продукты путем добавлять флейвор персистирования JPA в их. Некоторые из этих продуктов включают:
Hibernate, Eclipselink, Toplink, данные по JPA, etc. весны