Учебники

JPA — Архитектура

Java Persistence API является источником для хранения бизнес-сущностей как реляционных сущностей. В нем показано, как определить объект PLAIN OLD JAVA (POJO) как объект и как управлять объектами с отношениями.

Архитектура уровня класса

На следующем рисунке показана архитектура уровня класса JPA. Он показывает основные классы и интерфейсы JPA.

Архитектура уровня класса JPA

В следующей таблице описан каждый из блоков, показанных в приведенной выше архитектуре.

Единицы Описание
EntityManagerFactory Это фабричный класс EntityManager. Он создает и управляет несколькими экземплярами EntityManager.
EntityManager Это интерфейс, он управляет операциями сохранения на объектах. Это работает как фабрика для экземпляра Query.
сущность Сущности — это постоянные объекты, хранящиеся в виде записей в базе данных.
EntityTransaction Он имеет непосредственное отношение к EntityManager. Для каждого EntityManager операции поддерживаются классом EntityTransaction.
Упорство Этот класс содержит статические методы для получения экземпляра EntityManagerFactory.
запрос Этот интерфейс реализуется каждым поставщиком JPA для получения реляционных объектов, соответствующих критериям.

Указанные выше классы и интерфейсы используются для хранения сущностей в базе данных в качестве записи. Они помогают программистам, сокращая их усилия по написанию кодов для хранения данных в базе данных, чтобы они могли сосредоточиться на более важных действиях, таких как написание кодов для отображения классов с таблицами базы данных.

JPA Классовые Отношения

В приведенной выше архитектуре отношения между классами и интерфейсами принадлежат пакету javax.persistence. Следующая диаграмма показывает отношения между ними.

Отношения между EntityManagerFactory и EntityManager одно-ко-многим . Это фабричный класс для экземпляров EntityManager.

Отношения между EntityManager и EntityTransaction являются взаимно-однозначными . Для каждой операции EntityManager существует экземпляр EntityTransaction.

Отношения между EntityManager и Query одно-ко-многим . Многие запросы могут быть выполнены с использованием одного экземпляра EntityManager.

Отношения между EntityManager и Entity один-ко-многим . Один экземпляр EntityManager может управлять несколькими объектами.