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

112 записей с тегом "Spring Data"

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

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

1. Обзор

Когда мы используем Spring Data JPA с Hibernate, мы также можем использовать дополнительные функции Hibernate. @DynamicUpdate — одна из таких функций.

@DynamicUpdate — это аннотация уровня класса, которую можно применить к объекту JPA. Это гарантирует, что Hibernate использует только измененные столбцы в операторе SQL, который он генерирует для обновления сущности .

В этой статье мы рассмотрим аннотацию @DynamicUpdate с помощью примера Spring Data JPA .

2. JPA @Entity

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

1. Обзор

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

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

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

./3e074f86df4e5666a86df76786131bb8.png

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

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

1. Обзор

В этом руководстве мы рассмотрим основы Spring Data Elasticsearch с акцентом на код и на практике.

Мы узнаем, как индексировать, искать и запрашивать Elasticsearch в приложении Spring, используя Spring Data Elasticsearch. Spring Data Elasticseach — это модуль Spring, который реализует Spring Data, предлагая способ взаимодействия с популярной поисковой системой с открытым исходным кодом на основе Lucene.

Хотя Elasticsearch может работать без четко определенной схемы, по-прежнему принято разрабатывать ее и создавать сопоставления, определяющие тип данных, которые мы ожидаем в определенных полях . Когда документ индексируется, его поля обрабатываются в соответствии с их типами. Например, текстовое поле будет размечено и отфильтровано в соответствии с правилами сопоставления. Мы также можем создавать собственные фильтры и токенизаторы.

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

Мы начнем с запуска нашего экземпляра Elasticsearch:

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

1. Обзор

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

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

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

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

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

1. Обзор

В этом руководстве мы узнаем , как работать с отношениями между сущностями в Spring Data REST .

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

Чтобы избежать дополнительной настройки, мы будем использовать для примеров встроенную базу данных H2 . Мы можем найти список необходимых зависимостей в нашей статье Introduction to Spring Data REST .

2. Отношения один к одному

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

1. Обзор

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

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

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

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

1. Обзор

В этом руководстве мы узнаем, как настроить имена коллекций MongoDB для наших классов, а также рассмотрим практический пример. Мы будем использовать Spring Data , что дает нам несколько вариантов для достижения этого с небольшой настройкой. Мы рассмотрим каждый вариант, создав простой музыкальный магазин. Таким образом, мы можем узнать, когда имеет смысл их использовать.

2. Пример использования и настройка

В нашем варианте использования есть четыре простых класса: MusicAlbum , Compilation , MusicTrack и Store . Имя коллекции каждого класса будет настроено по-разному. Также у каждого класса будет свой MongoRepository . Никаких пользовательских запросов не потребуется. Кроме того, нам понадобится правильно настроенный экземпляр базы данных MongoDB .

2.1. Сервис для перечисления содержимого коллекции по имени

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

1. Обзор

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

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

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

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

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

1. Обзор

Иногда, когда мы сохраняем даты в MySQL, мы понимаем, что дата из базы данных отличается от нашей системы или JVM.

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

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

2. Часовой пояс как параметр URL

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

1. Обзор

Начиная с версии 4.0, MongoDB поддерживает многодокументные транзакции ACID. Кроме того, Spring Data Lovelace теперь обеспечивает поддержку этих нативных транзакций MongoDB .

В этом руководстве мы обсудим поддержку Spring Data MongoDB для синхронных и реактивных транзакций.

Мы также рассмотрим Spring Data TransactionTemplate для поддержки неродных транзакций.

Чтобы познакомиться с этим модулем Spring Data, ознакомьтесь с нашей вводной статьей .

2. Настройте MongoDB 4.0