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

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

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

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

1. Обзор

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

2. Сущности

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

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

1. Обзор

В этом руководстве мы увидим, как использовать запросы JPA и Hibernate, а также разницу между запросами Criteria, JPQL и HQL. Критериальные запросы позволяют пользователю писать запросы без использования необработанного SQL. Наряду с запросами Criteria мы рассмотрим написание именованных запросов Hibernate и способы использования аннотации @Query в Spring Data JPA.

Прежде чем мы углубимся в это, мы должны отметить, что Hibernate Criteria API устарел, начиная с Hibernate 5.2. Поэтому в наших примерах мы будем использовать JPA Criteria API , поскольку это новый и предпочтительный инструмент для написания запросов Criteria. Итак, с этого момента мы будем называть его просто Criteria API.

2. Критериальные запросы

Criteria API помогает создавать объект запроса Criteria, применяя к нему различные фильтры и логические условия. Это альтернативный способ манипулирования объектами и возврата нужных данных из таблицы СУБД.

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

1. Введение

Построение запросов с использованием JPA несложно; однако иногда мы забываем простые вещи, которые имеют огромное значение.

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

2. Что такое параметры запроса?

Начнем с объяснения того, что такое параметры запроса.

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

1. Введение

В этом руководстве мы обсудим определение уникальных ограничений с помощью JPA и Hibernate .

Сначала мы рассмотрим уникальные ограничения и то, чем они отличаются от ограничений первичного ключа.

Затем мы рассмотрим важные аннотации JPA, @ Column(unique=true) и @UniqueConstraint. Мы реализуем их, чтобы определить уникальные ограничения для одного столбца и нескольких столбцов.

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

2. Уникальные ограничения

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

1. Обзор

В этом руководстве мы обсудим , как правильно настроить Spring Transactions , как использовать аннотацию @Transactional и распространенные ловушки.

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

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

2. Настройте транзакции

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

1. Обзор

JPA Buddy — это широко используемый плагин IntelliJ IDEA, предназначенный как для новых, так и для опытных разработчиков, которые работают с моделью данных JPA и связанными технологиями, такими как Spring Data JPA , инструменты управления версиями БД ( Flyway , Liquibase ), MapStruct и некоторые другие. Плагин предоставляет визуальные дизайнеры, генерацию кода и дополнительные проверки, которые должны упростить разработку и улучшить код в соответствии с лучшими практиками для JPA.

Плагин работает как с версиями IntelliJ IDEA Community, так и с Ultimate и использует модель «freemium». Большинство функций доступны бесплатно, и нам нужно будет купить подписку, чтобы получить доступ к платным.

В этом уроке мы рассмотрим основные функции плагина и посмотрим, как мы можем использовать их в цикле разработки приложения. В качестве примера возьмем популярное эталонное приложение — Spring PetClinic .

2. Начало работы

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

1. Введение

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

При запуске Spring Data сканирует репозитории и регистрирует их определения bean-компонентов как bean-компоненты с одноэлементной областью. Во время инициализации репозитории немедленно получают EntityManager . В частности, они получают метамодель JPA и проверяют объявленные запросы.

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

2. Различные варианты загрузки репозиториев

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

1. Обзор

В этом руководстве показано, как настроить Spring с JPA , используя Hibernate в качестве поставщика постоянства.

Пошаговое введение в настройку контекста Spring с использованием конфигурации на основе Java и базовой помпы Maven для проекта см . в этой статье .

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

Вот видео по настройке Hibernate 4 с Spring 4 (рекомендуем посмотреть его в полном 1080p):

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

1. Обзор

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

Пакетная обработка позволяет нам отправлять группу операторов SQL в базу данных за один сетевой вызов. Таким образом, мы можем оптимизировать использование сети и памяти нашим приложением.

2. Настройка

2.1. Образец модели данных

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

1. Обзор

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

2. Spring Data Generated DAO — больше никаких реализаций DAO

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