Phase 4 - Databases & Persistence
Goal: Interact with relational databases correctly - raw JDBC, JPA/Hibernate ORM, Spring Data repositories, schema migrations, and connection-pool management. By the end of this phase you can design a persistence layer from scratch and explain exactly what SQL every layer generates.
| Module | Topic | Status |
|---|---|---|
| 31 | JDBC - DriverManager, PreparedStatement, ResultSet, transactions, HikariCP, batch | ✅ |
| 32 | JPA & Hibernate - entities, relationships, fetch types, N+1, cache, JPQL, Criteria API | ✅ |
| 33 | Spring Data JPA - repositories, derived queries, @Query, projections, pagination | ✅ |
| 34 | NoSQL - MongoDB documents & aggregations, Redis hash/list/pub-sub | ✅ |
| 35 | Database Migration - Flyway versioned migrations, Liquibase changeSets, zero-downtime | ✅ |