Перейти к основному содержимому

93 записи с тегом "JPA"

Посмотреть все теги

· 4 мин. чтения

1. Обзор

Проще говоря, Entity Graphs — это еще один способ описать запрос в JPA 2.1. Мы можем использовать их для формулирования более эффективных запросов.

В этом руководстве мы узнаем, как реализовать графики сущностей с помощью Spring Data JPA на простом примере.

2. Сущности

Во-первых, давайте создадим модель с именем Item , которая имеет несколько характеристик:

· 3 мин. чтения

1. Введение

В этой быстрой статье мы рассмотрим заполнители репозитория Spring JPA на небольшом примере. Заполнитель репозитория Spring Data JPA — отличная альтернатива скрипту data.sql .

Средство заполнения репозитория Spring Data JPA поддерживает форматы файлов JSON и XML. В следующих разделах мы увидим, как использовать заполнитель репозитория Spring Data JPA.

2. Образец заявления

Прежде всего, предположим, что у нас есть класс сущности Fruit и перечень фруктов для заполнения нашей базы данных:

· 3 мин. чтения

1. Обзор

В этом руководстве мы рассмотрим использование аннотации @EmbeddedId и метода « findBy » для запроса объекта JPA на основе составного ключа.

Следовательно , мы будем использовать аннотации @EmbeddeId и @Embeddable для представления составных ключей в объектах JPA . Нам также нужно использовать Spring JpaRepository для достижения нашей цели.

Мы сосредоточимся на запросе объектов по частичному первичному ключу.

2. Необходимость в @Embeddable и @EmbeddedId

· 2 мин. чтения

1. Обзор

В этом руководстве мы рассмотрим причину ошибки TransactionRequiredException и способы ее устранения.

2. Исключение TransactionRequiredException

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

Например, попытка обновить запись без транзакции:

· 5 мин. чтения

1. Обзор

В этом руководстве мы проиллюстрируем момент, когда JPA присваивает значение первичному ключу . Мы поясним, что говорит спецификация JPA, а затем покажем примеры использования различных стратегий JPA для генерации первичного ключа.

2. Постановка задачи

Как мы знаем, JPA (Java Persistence API) использует EntityManager для управления жизненным циклом Entity . В какой-то момент поставщику JPA необходимо присвоить значение первичному ключу. Итак, мы можем спросить себя, когда это происходит? И где документация, в которой это указано?

Спецификация JPA гласит:

· 9 мин. чтения

1. Обзор

В этом руководстве мы увидим, как мы можем построить запрос JPA между несвязанными объектами.

2. Зависимости Maven

Начнем с добавления необходимых зависимостей в наш pom.xml .

Прежде всего, нам нужно добавить зависимость для Java Persistence API :

· 4 мин. чтения

1. Обзор

Версия JPA 2.2 официально представила поддержку Java 8 Date and Time API . До этого либо приходилось полагаться на проприетарное решение, либо приходилось использовать JPA Converter API.

В этом руководстве мы покажем, как сопоставлять различные типы даты и времени Java 8 . Особое внимание мы уделим тем, которые учитывают информацию о смещении.

2. Зависимости Maven

Прежде чем мы начнем, нам нужно включить API JPA 2.2 в путь к классам проекта. В проекте на основе Maven мы можем просто добавить его зависимость в наш файл pom.xml :

· 7 мин. чтения

1. Введение

Метод getReference() класса EntityManager был частью спецификации JPA с первой версии. Однако этот метод сбивает с толку некоторых разработчиков, поскольку его поведение зависит от базового поставщика сохраняемости.

В этом руководстве мы собираемся объяснить, как использовать метод getReference() в Hibernate EntityManager .

2. Операции выборки EntityManager

Прежде всего, мы рассмотрим, как мы можем получить сущности по их первичным ключам. Без написания каких-либо запросов EntityManager предоставляет нам два основных метода для достижения этой цели.

· 3 мин. чтения

1. Введение

В этой быстрой статье мы рассмотрим использование преобразователей атрибутов, доступных в JPA 2.1, которые, проще говоря, позволяют нам сопоставлять типы JDBC с классами Java.

Здесь мы будем использовать Hibernate 5 в качестве нашей реализации JPA.

2. Создание конвертера

Мы собираемся показать, как реализовать преобразователь атрибутов для пользовательского класса Java.

· 3 мин. чтения

1. Введение

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

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

Для двунаправленных отношений мы обычно определяем:

  • сторона-владелец
  • обратная или референтная сторона

Аннотация @JoinColumn помогает нам указать столбец, который мы будем использовать для присоединения к ассоциации сущностей или коллекции элементов. С другой стороны, атрибут mappedBy используется для определения ссылающейся стороны (не владеющей стороной) отношения.