04-persistence-data-access

Persistence & Data Access

JPA, transactions, fetch strategies, and query patterns for backend persistence layers.

backend-engineerpersistencejpatransactionsquery

Persistence & Data Access

Build reliable backend storage with correct entity modeling, transaction boundaries, and performance-aware data access.

Key concepts

  • Spring Data JPA entity mapping and relationship modeling.
  • Transaction propagation and isolation.
  • Lazy vs eager fetch strategies and N+1 query avoidance.
  • Pagination and criteria-driven query patterns.

Engineering focus

Prevent inefficient queries, keep transactional boundaries explicit, and avoid loading unnecessary data into memory.


Interview Questions

  1. What is the N+1 query problem and how can you fix it?
  2. When should you use lazy loading vs eager loading?
  3. Explain transaction propagation in Spring.
  4. Why is pagination important for APIs that query large datasets?