Hibernate

Hibernate и JPA для Java с нуля: маппинг сущностей и связей, persistence context, ленивая загрузка и N+1, запросы, кэш, транзакции. Поймёте, почему ORM ведёт себя так.

Раздел с нуля про Hibernate — самую распространённую реализацию JPA. Как объекты Java отображаются на таблицы, как устроен persistence context, откуда берутся LazyInitializationException и проблема N+1, как писать запросы и не наступить на типичные грабли ORM. Глубже, чем обзор Spring Data — читать лучше по порядку.