thepointman.dev_

Courses / Java

JPA & Hibernate

advanced12 lessons

The object-relational mismatch, EntityManager and the persistence context as Unit of Work, the four entity states (Transient/Persistent/Detached/Removed), association mapping strategies, the N+1 problem (every fix: JOIN FETCH, @BatchSize, @EntityGraph, projections), lazy vs eager loading, LazyInitializationException root cause, and L1/L2 caching.

// Lessons

  1. 01

    The Object-Relational Mismatch — Why ORM Exists

    soon
  2. 02

    EntityManager and the Persistence Context — Unit of Work Pattern

    soon
  3. 03

    Entity Lifecycle — Transient, Persistent, Detached and Removed

    soon
  4. 04

    @OneToMany and @ManyToOne — Owning Side, mappedBy and Foreign Keys

    soon
  5. 05

    @ManyToMany — Join Tables, Cascade and the Ownership Trap

    soon
  6. 06

    The N+1 Problem — What It Is and How to Detect It

    soon
  7. 07

    N+1 Fixes — JOIN FETCH, @BatchSize, @EntityGraph and Projections

    soon
  8. 08

    Lazy vs Eager Loading — FetchType Defaults and LazyInitializationException

    soon
  9. 09

    The Open Session in View Anti-Pattern

    soon
  10. 10

    Hibernate L1 Cache — The Persistence Context as a Cache

    soon
  11. 11

    Hibernate L2 Cache — Ehcache, Region Configuration and Invalidation

    soon
  12. 12

    JPQL and Named Queries — Beyond Simple findById

    soon