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

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

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

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

1. Введение

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

Более того, нам необходимо обеспечить согласованность данных между одновременным чтением и обновлением.

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

2. Понимание оптимистической блокировки

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

1. Обзор

В контексте ORM аудит базы данных означает отслеживание и регистрацию событий, связанных с постоянными сущностями, или просто управление версиями сущностей. Вдохновленные триггерами SQL, события представляют собой операции вставки, обновления и удаления сущностей. Преимущества аудита базы данных аналогичны преимуществам контроля версий исходного кода.

В этом руководстве мы продемонстрируем три подхода к внедрению аудита в приложение. Во-первых, мы реализуем его с помощью стандартного JPA. Далее мы рассмотрим два расширения JPA, которые предоставляют свои собственные функции аудита, одно предоставляется Hibernate, другое — Spring Data.

Вот примеры связанных сущностей, Bar и Foo, которые мы будем использовать в этом примере:

./3e074f86df4e5666a86df76786131bb8.png

2. Аудит с помощью JPA

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

1. Обзор

В этом руководстве мы покажем, как обрабатывать нулевые параметры в Spring Data JPA .

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

Ниже мы покажем, как реализовать каждый из них.

2. Быстрый пример

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

1. Обзор

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

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

2. Структура производных методов запросов в Spring

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

1. Обзор

В этом кратком руководстве мы обсудим более продвинутую функцию Spring Data JPA Specifications, которая позволяет нам объединять таблицы при создании запроса.

Давайте начнем с краткого обзора спецификаций JPA и их использования.

2. Спецификации JPA

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

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

1. Обзор

В этом руководстве мы рассмотрим значения столбцов по умолчанию в JPA.

Мы узнаем, как установить их как свойство по умолчанию в сущности, а также непосредственно в определении таблицы SQL.

2. При создании объекта

Первый способ установить значение столбца по умолчанию — установить его непосредственно как значение свойства объекта :

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

1. Обзор

В этом руководстве мы увидим несколько способов работы с отношениями «многие ко многим» с использованием JPA.

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

Для простоты в примерах кода мы покажем только те атрибуты и конфигурацию JPA, которые относятся к отношениям «многие ко многим».

2. Базовый метод «многие ко многим»

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

1. Обзор

В этом кратком руководстве мы обсудим разницу между методами save() и saveAndFlush() в Spring Data JPA .

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

2. Пример приложения

Во-первых, давайте посмотрим, как использовать методы save() и saveAndFlush() на примере. Мы начнем с создания класса сущности:

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

1. Обзор

В этой статье основное внимание будет уделено упрощению уровня DAO за счет использования единого сгенерированного объекта доступа к данным для всех сущностей в системе, что приведет к элегантному доступу к данным без ненужного беспорядка или многословия.

Мы будем основываться на классе Abstract DAO, который мы видели в нашей предыдущей статье о Spring и Hibernate, и добавим поддержку дженериков.


2. Hibernate и JPA DAO

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

1. Обзор

В этом кратком руководстве мы рассмотрим различные способы создания запросов LIKE в репозиториях Spring JPA .

Мы начнем с рассмотрения различных ключевых слов, которые мы можем использовать при создании методов запросов. Затем мы рассмотрим аннотацию @Query с именованными и упорядоченными параметрами.

2. Настройка

В нашем примере мы будем запрашивать таблицу фильмов .