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

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

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

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

1. Обзор

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

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

2. Сущности

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

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

1. Обзор

В этом кратком руководстве мы рассмотрим, как получить все данные из таблицы с помощью Hibernate, используя JPQL или Criteria API.

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

2. JPQL

JPQL предоставляет простой и понятный способ получить все сущности из таблицы.

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

1. Обзор

Большинство приложений, управляемых JPA, интенсивно используют файл «persistence.xml» для получения реализации JPA, такой как Hibernate или OpenJPA .

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

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

С другой стороны, можно запустить реализацию JPA, вообще не прибегая к файлу «persistence.xml» , просто используя обычную Java .

В этом уроке мы увидим, как это сделать с помощью Hibernate.

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

1. Введение

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

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

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

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

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

1. Введение

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

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

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

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

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

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

1. Обзор

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

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

Изоляция транзакций определяется для соединений с базой данных. Мы можем настроить его для сохранения различной степени блокировки данных.

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

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

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

1. Обзор

В этой статье показаны различные способы использования JPA для сортировки .

2. Сортировка с помощью JPA/JQL API

Использование JQL для сортировки осуществляется с помощью предложения Order By :

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

1. Обзор

В этом руководстве мы увидим, что такое прокси в контексте метода load() Hibernate .

Читателям, плохо знакомым с Hibernate, рекомендуется сначала ознакомиться с основами .

2. Краткое введение в прокси и метод load()

По определению, доверенное лицо — это «функция, уполномоченная выступать в качестве заместителя или замещать другую» .

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

1. Обзор

API критериев JPA можно использовать для простого добавления нескольких условий И/ИЛИ при запросе записей в базе данных. В этом руководстве мы рассмотрим быстрый пример запросов критериев JPA, которые объединяют несколько предикатов AND/OR.

Если вы не знакомы с предикатами, мы предлагаем сначала прочитать об основных критериальных запросах JPA .

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

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

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

1. Введение

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

Здесь мы сосредоточимся на двух разных сценариях:

  1. с помощью LocalSessionFactoryBean
  2. с помощью AnnotationSessionFactoryBean

2. Причина