Java Persistence API: различия между версиями
| [непроверенная версия] | [непроверенная версия] |
Спасение 6 источников и отметка 0 мёртвыми. #IABot (v1.5.1) |
м Cleaning up redundant parameters added by prior faulty versions.) #IABot (v2.0.8.8 |
||
| Строка 32: | Строка 32: | ||
== Ссылки == |
== Ссылки == |
||
* {{cite web|url=http://glassfish.dev.java.net/javaee5/persistence/|title=GlassFish's Persistence page|language=en|deadlink=unknown-host|archiveurl=https://archive.is/20130112000920/http://glassfish.java.net/javaee5/persistence/|archivedate=2013-01-12 |
* {{cite web|url=http://glassfish.dev.java.net/javaee5/persistence/|title=GlassFish's Persistence page|language=en|deadlink=unknown-host|archiveurl=https://archive.is/20130112000920/http://glassfish.java.net/javaee5/persistence/|archivedate=2013-01-12}} |
||
* {{cite web|url=http://www.oracle.com/technetwork/articles/javaee/jpa-137156.html|title=The Java Persistence API - A Simpler Programming Model for Entity Persistence|language=en|publisher=Oracle|archiveurl=https://www.webcitation.org/67kNJfAHL?url=http://www.oracle.com/technetwork/articles/javaee/jpa-137156.html|archivedate=2012-05-18|deadurl=yes}} |
* {{cite web|url=http://www.oracle.com/technetwork/articles/javaee/jpa-137156.html|title=The Java Persistence API - A Simpler Programming Model for Entity Persistence|language=en|publisher=Oracle|archiveurl=https://www.webcitation.org/67kNJfAHL?url=http://www.oracle.com/technetwork/articles/javaee/jpa-137156.html|archivedate=2012-05-18|deadurl=yes}} |
||
Версия от 17:11, 18 июня 2022
Java Persistence API (JPA) — спецификация API Java EE, предоставляет возможность сохранять в удобном виде Java-объекты в базе данных[1].
Существует несколько реализаций этого интерфейса, одна из самых популярных использует для этого Hibernate. JPA реализует концепцию ORM.
Поддержка сохранности данных, предоставляемая JPA, покрывает области:
- непосредственно API, заданный в пакете
javax.persistence; - платформо-независимый объектно-ориентированный язык запросов Java Persistence Query Language;
- метаинформация, описывающая связи между объектами.
- Генерация DDL для сущностей
История
Java Persistence API был определён в процессе работы экспертной группы над JSR 220[2]. Первая версия JPA была выпущена 11 мая 2006 года. JPA 2.0 был описан экспертной группой в JSR 317[3], спецификация была выпущена 10 декабря 2009 года. Спецификация JPA 2.1 была выпущена 22 апреля 2013 года.
Entity
Entity (Сущность) — POJO-класс, связанный с БД с помощью аннотации (@Entity) или через XML. К такому классу предъявляются следующие требования:
- Должен иметь пустой конструктор (
publicилиprotected) - Не может быть вложенным, интерфейсом или enum
- Не может быть
finalи не может содержатьfinal-полей/свойств - Должен содержать хотя бы одно
@Id-поле
При этом entity может:
- Содержать непустые конструкторы
- Наследоваться и быть наследованным
- Содержать другие методы и реализовывать интерфейсы
Entities могут быть связаны друг с другом (один-к-одному, один-ко-многим, многие-к-одному и многие-ко-многим)[4].
См. также
Примечания
- ↑ Java Persistence API FAQ (англ.). Oracle Corporation. Архивировано из оригинала 22 августа 2008 года.
- ↑ JSR 220: Enterprise JavaBeansTM 3.0 (англ.). Архивировано из оригинала 9 сентября 2012 года.
- ↑ JSR 317: Java Persistence 2.0 (англ.). Архивировано из оригинала 9 сентября 2012 года.
- ↑ Package javax.persistence (javadoc) (англ.). Oracle Corporation. Архивировано из оригинала 11 декабря 2012 года.
Ссылки
- GlassFish's Persistence page (англ.). Архивировано 12 января 2013 года.
- The Java Persistence API - A Simpler Programming Model for Entity Persistence (англ.). Oracle. Архивировано из оригинала 18 мая 2012 года.