Basic |
Introduction |
What is Hibernate, Features of Hibernate, ORM Concepts, Hibernate Architecture, Advantages of Hibernate |
|
Setup & Configuration |
Installing Hibernate, Hibernate Dependencies, Hibernate Configuration Files, Hibernate Properties, Annotation vs XML configuration |
|
Basic CRUD Operations |
Session, Transaction, Save(), Persist(), Update(), Delete(), Get(), Load(), SessionFactory |
|
Hibernate Data Types |
Primitive Types, Wrapper Types, Date & Time Types, Collections, Custom Types |
|
Hibernate Mappings |
Mapping Classes to Tables, Mapping Attributes to Columns, @Entity, @Table, @Column, @Id |
Intermediate |
Associations & Relationships |
One-to-One, One-to-Many, Many-to-One, Many-to-Many, Mapping Annotations, Cascade Types, Fetch Types, JoinTable, JoinColumn |
|
Hibernate Query Language (HQL) |
Introduction to HQL, HQL Syntax, HQL Select Queries, HQL Update/Delete, Named Queries, Aggregate Functions |
|
Criteria API |
Creating Criteria, Restrictions, Projections, Logical Expressions, Ordering, Pagination |
|
Hibernate Caching |
First-Level Cache, Second-Level Cache, Query Cache, Cache Providers, Cache Annotations |
|
Inheritance Mapping |
Single Table Strategy, Joined Table Strategy, Table per Class Strategy, @Inheritance, @DiscriminatorColumn |
Advanced |
Transactions & Concurrency |
ACID Concepts, Transaction Management, Optimistic Locking, Pessimistic Locking, Versioning, @Version Annotation |
|
Fetching Strategies |
Eager vs Lazy Loading, N+1 Problem, Batch Fetching, FetchMode, @Fetch Annotation |
|
Hibernate Events & Listeners |
Event Types, PreInsert, PostInsert, PreUpdate, PostUpdate, PreDelete, PostDelete, Event Listeners |
|
Hibernate Interceptors |
Implementing Interceptors, onSave(), onDelete(), onLoad(), Custom Interceptors |
|
Advanced HQL & Native Queries |
HQL Joins, Subqueries, Group By, Having, Named Native Queries, SQLQuery API |
Expert |
Performance Tuning |
Optimizing Session Usage, Batch Processing, Lazy Loading Best Practices, Fetch Joins, Indexing, Query Optimization |
|
Hibernate Search |
Integrating Hibernate Search, Lucene, Full-Text Search, Indexing Entities, Querying Index |
|
Multi-Tenancy |
Database Multi-Tenancy, Schema Multi-Tenancy, Discriminator Multi-Tenancy, Configuration |
|
Advanced Caching Techniques |
Custom Cache Regions, Cache Concurrency Strategies, Read-Only, Non-Strict Read-Write, Transactional Cache |
|
Best Practices & Design Patterns |
Session Management, DAO Pattern, Repository Pattern, Open Session In View Pattern, Avoiding Common Pitfalls |