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

258 записей с тегом "Persistence"

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

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

1. Введение

В этом руководстве мы рассмотрим BSON и то, как мы можем использовать его для взаимодействия с MongoDB .

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

MongoDB — это распределенный механизм хранения документов NoSQL. Документы хранятся как данные BSON и группируются в коллекции. Документы в коллекции аналогичны строкам в таблице реляционной базы данных .

Для более подробного ознакомления ознакомьтесь со вводной статьей о MongoDB .

2. Что такое БСОН ?

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

1. Обзор

В этом руководстве мы поймем, как использовать Morphia , средство сопоставления документов объектов (ODM) для MongoDB в Java.

В процессе мы также поймем, что такое ODM и как он облегчает работу с MongoDB.

2. Что такое ODM ?

Для тех, кто не знаком с этой областью, MongoDB — это ориентированная на документы база данных, созданная для естественного распространения . Документно-ориентированные базы данных, говоря простым языком, управляют документами, которые представляют собой не что иное , как бессхемный способ организации полуструктурированных данных . Они подпадают под более широкий и слабо определенный зонтик баз данных NoSQL, названных в честь их явного отклонения от традиционной организации баз данных SQL.

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

1. Обзор

В этом руководстве мы рассмотрим простую реализацию тегов с использованием Java и MongoDB.

Для тех, кто не знаком с концепцией, тег — это ключевое слово, используемое в качестве «метки» для группировки документов по разным категориям. Это позволяет пользователям быстро перемещаться по похожему контенту и особенно полезно при работе с большим объемом данных.

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

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

1. Обзор

При кэшировании в Redis может быть полезно очистить весь кеш, когда он станет недействительным.

В этом кратком руководстве мы узнаем, как удалить все ключи, присутствующие в Redis, как в определенных базах данных, так и во всех базах данных.

Во-первых, мы рассмотрим командную строку. Затем мы увидим, как сделать то же самое с помощью API и клиента Java.

2. Запуск Redis

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

1. Обзор

В этом руководстве мы узнаем, как настраивать и реализовывать операции с базой данных реактивным способом на Couchbase с использованием репозиториев данных Spring.

Мы рассмотрим основные способы использования ReactiveCrudRepository и ReactiveSortingRepository . Кроме того, мы настроим наше тестовое приложение с помощью AbstractReactiveCouchbaseConfiguration .

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

Во-первых, добавим необходимые зависимости:

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

1. Обзор

В этом руководстве мы увидим, как решить распространенную ошибку Hibernate — «org.hibernate.TransientObjectException: объект ссылается на несохраненный временный экземпляр» . Мы получаем эту ошибку из сеанса Hibernate , когда пытаемся сохранить управляемый объект , и этот объект ссылается на несохраненный временный экземпляр.

2. Описание проблемы

Исключение TransientObjectException « вызывается, когда пользователь передает временный экземпляр методу сеанса, который ожидает постоянный экземпляр».

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

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

1. Обзор

В этом руководстве мы рассмотрим некоторые вспомогательные инструменты для JPA. Мы сосредоточимся на подключаемых модулях, доступных для двух самых популярных IDE: IntelliJ IDEA и Eclipse .

2. Поддержка JPA в IntelliJ IDEA и Eclipse

JPA — это наиболее широко используемая спецификация для работы с реляционными базами данных в приложениях Java. По сути, JPA определяет все аспекты реализации, от аннотаций до правил обработки данных.

Обычно мы работаем не только с сущностями JPA. В дополнение к чистому коду, связанному с ORM, нам также могут понадобиться такие вещи, как система управления версиями базы данных, оптимизация запросов SQL/JPQL/HQL, интеграция с контейнерами IoC и т. д. Вот где плагины становятся очень полезными. Они могут поддерживать обратный инжиниринг базы данных, генерацию схемы, генерацию сценариев миграции или создание каркасов репозиториев Spring Data JPA.

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

1. Введение

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

2. Составные первичные ключи

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

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

1. Обзор

В этом руководстве мы рассмотрим различные типы соединений, поддерживаемые JPA .

Для этой цели мы будем использовать JPQL, язык запросов для JPA .

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

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

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

1. Обзор

В этом руководстве мы узнаем, как преобразовать прокси-сервер Hibernate в реальный объект-сущность. Перед этим разберемся, когда Hibernate создает прокси-объект. Затем мы поговорим о том, чем полезен прокси-сервер Hibernate. И, наконец, мы смоделируем сценарий, в котором необходимо распаковать объект.

2. Когда Hibernate создает прокси-объект?

Hibernate использует прокси-объекты для отложенной загрузки . Чтобы лучше представить сценарий, давайте посмотрим на сущности PaymentReceipt и Payment :

@Entity
public class PaymentReceipt {
...
@OneToOne(fetch = FetchType.LAZY)
private Payment payment;
...
}