| JPA Basics |
Introduction, Entities, Annotations |
✅ |
|
|
|
| Entity Mapping |
@Entity, @Table, @Id, @GeneratedValue |
✅ |
|
|
|
| Relationships |
@OneToOne, @OneToMany, @ManyToOne, @ManyToMany |
✅ |
✅ |
|
|
| JPQL Queries |
JPQL Basics, Parameters, Named Queries |
✅ |
✅ |
|
|
| Spring Data Repositories |
CrudRepository, JpaRepository, PagingAndSortingRepository |
✅ |
✅ |
|
|
| Derived Queries |
Method Naming, Query Derivation |
✅ |
✅ |
|
|
| Paging & Sorting |
Pageable, Sort, Slice |
|
✅ |
|
|
| Custom Queries |
@Query Annotation, Native Queries |
|
✅ |
|
|
| Criteria API |
CriteriaBuilder, Specifications |
|
✅ |
✅ |
|
| Transactions |
@Transactional, Propagation, Isolation |
|
✅ |
✅ |
|
| Caching |
First Level, Second Level, EhCache, Infinispan |
|
✅ |
✅ |
|
| Auditing |
@CreatedDate, @LastModifiedDate, AuditingEntityListener |
|
✅ |
✅ |
|
| Entity Lifecycle |
@PrePersist, @PostLoad, @PostUpdate |
|
✅ |
✅ |
|
| Performance Tuning |
N+1 Problem, FetchType (LAZY vs EAGER), Batch Fetching |
|
|
✅ |
|
| Locking |
Optimistic Locking, Pessimistic Locking, @Version |
|
|
✅ |
|
| Advanced Relationships |
Composite Keys, @EmbeddedId, @IdClass |
|
|
✅ |
|
| JPQL Advanced |
Joins, Subqueries, Group By, Having |
|
|
✅ |
|
| Projections |
Interface-based, DTO-based, Dynamic Projections |
|
|
✅ |
|
| Multi-Database |
Multiple DataSources, Routing, Schema Separation |
|
|
✅ |
|
| Query Optimization |
Query Hints, Fetch Joins, Plan Caching |
|
|
✅ |
|
| Spring Boot Integration |
Auto Configuration, application.properties, application.yml |
✅ |
✅ |
✅ |
|
| Specifications |
Predicate Composition, Complex Dynamic Queries |
|
|
✅ |
|
| Event Handling |
EntityListeners, Domain Events, Application Events |
|
|
✅ |
|
| Hibernate Internals |
Session, Persistence Context, Dirty Checking |
|
|
✅ |
|
| Distributed Transactions |
XA Transactions, JTA Integration |
|
|
|
✅ |
| Advanced Caching |
Redis, Hazelcast, Custom Cache Providers |
|
|
|
✅ |
| Migration |
Migrating from JDBC/Hibernate to Spring Data JPA |
|
|
|
✅ |
| Testing |
@DataJpaTest, H2 Database, Integration Testing |
|
✅ |
✅ |
✅ |
| Best Practices |
DTO vs Entity, Entity Design, Batch Inserts |
|
|
✅ |
✅ |
| Scalability |
Sharding, Partitioning, Multi-Tenant Databases |
|
|
|
✅ |