Java Persistence API
Java Persistence API (JPA) — спецификация API Java EE, предоставляет возможность сохранять в удобном виде Java-объекты в базе данных[3].
Существует несколько реализаций этого интерфейса, одна из самых популярных использует для этого Hibernate. JPA реализует концепцию ORM.
Поддержка сохранности данных, предоставляемая JPA, покрывает области:
- непосредственно API, заданный в пакете
javax.persistence; - платформо-независимый объектно-ориентированный язык запросов Java Persistence Query Language;
- метаинформация, описывающая связи между объектами;
- Генерация DDL для сущностей.
Что важно знать
| Java Persistence API | |
|---|---|
| Официальный сайт | jakarta.ee/specif… (англ.) |
| Разработчик | Eclipse Foundation |
| Лицензия | Eclipse Public License 2.0[d] и GPL linking exception[d] |
| Создатель | Sun Microsystems |
| Репозиторий исходного кода | github.com/eclipse-ee4j/… |
| Правовой статус | защищено авторским правом[d] |
| Версия | |
| Государство | |
История
Entity
Entity (Сущность) — POJO-класс, связанный с БД с помощью аннотации (@Entity) или через XML. К такому классу предъявляются следующие требования:
- Должен иметь пустой конструктор (
publicилиprotected) - Не может быть вложенным, интерфейсом или enum
- Не может быть
finalи не может содержатьfinal-полей/свойств - Должен содержать хотя бы одно
@Id-поле
При этом entity может:
- Содержать непустые конструкторы
- Наследоваться и быть наследованным
- Содержать другие методы и реализовывать интерфейсы
Entities могут быть связаны друг с другом (один-к-одному, один-ко-многим, многие-к-одному и многие-ко-многим)[6].
См. также
Примечания
Ссылки
- GlassFish's Persistence page (англ.). Архивировано из оригинала 12 января 2013 года.
- The Java Persistence API - A Simpler Programming Model for Entity Persistence (англ.) (недоступная ссылка — история). Oracle. Архивировано 18 мая 2012 года.


