| S.No |
Topic |
Sub-Topics |
| 1 |
Introduction to Hibernate |
What is Hibernate?, Features, Advantages, ORM concept, Use cases |
| 2 |
Hibernate Architecture |
Configuration, SessionFactory, Session, Transaction, Query Interface |
| 3 |
Environment Setup |
Hibernate installation, IDE setup, Database setup, Maven/Gradle dependencies, Configuration files |
| 4 |
Hibernate Configuration |
hibernate.cfg.xml, hibernate.properties, DataSource configuration, Dialects, Connection pooling |
| 5 |
Entity Mapping |
@Entity annotation, @Table annotation, @Id annotation, @Column annotation, Mapping strategies |
| 6 |
Primary Key Generation |
IDENTITY, SEQUENCE, TABLE, AUTO, Custom generators |
| 7 |
Hibernate Session |
Opening session, Closing session, SessionFactory, Session methods, Best practices |
| 8 |
CRUD Operations |
Save, Update, Delete, Load, Get |
| 9 |
Hibernate Query Language (HQL) |
Basics of HQL, SELECT queries, WHERE clause, JOINs, Aggregation functions |
| 10 |
Criteria API |
Creating Criteria, Restrictions, Projections, Ordering, Pagination |
| 11 |
Native SQL Queries |
Executing SQL, Result mapping, Named queries, Parameters, Pagination |
| 12 |
Associations in Hibernate |
One-to-One, One-to-Many, Many-to-One, Many-to-Many, Mapping strategies |
| 13 |
Collection Mapping |
List, Set, Map, Bag, Array mapping |
| 14 |
Inheritance Mapping |
Single Table strategy, Table per Class strategy, Joined strategy, Discriminator column, Annotations |
| 15 |
Component Mapping |
Embedded objects, @Embeddable, @Embedded annotation, Reusability, Nested components |
| 16 |
Hibernate Caching |
First-level cache, Second-level cache, Query cache, Cache providers, Configuration |
| 17 |
Hibernate Transactions |
Transaction API, ACID properties, Commit, Rollback, Transaction propagation |
| 18 |
Lazy vs Eager Loading |
Lazy loading, Eager loading, FetchType, Performance impact, Use cases |
| 19 |
Hibernate Event Listeners |
PreInsert, PostInsert, PreUpdate, PostUpdate, Configuration |
| 20 |
Hibernate Interceptors |
Session interceptor, Methods, Custom interceptors, Performance, Use cases |
| 21 |
Hibernate Validator |
Bean validation, @NotNull, @Size, Custom constraints, Integration |
| 22 |
Hibernate Filters |
Defining filters, Enabling filters, Parameters, Dynamic filtering, Use cases |
| 23 |
Named Queries |
Defining queries, Using @NamedQuery, Using @NamedNativeQuery, Parameters, Reusability |
| 24 |
Batch Processing |
Bulk insert, Bulk update, Stateless session, JDBC batch, Performance optimization |
| 25 |
Optimistic & Pessimistic Locking |
Optimistic locking, Pessimistic locking, Versioning, Lock modes, Concurrency control |
| 26 |
Hibernate with Spring |
Spring ORM, SessionFactory integration, Transaction management, DAO pattern, Configuration |
| 27 |
Performance Tuning |
Query optimization, Fetch strategies, Caching strategies, Connection pooling, Monitoring tools |
| 28 |
Logging & Monitoring |
Hibernate logging, SQL logging, Statistics, JMX monitoring, Tools |
| 29 |
Projects & Hands-on Labs |
CRUD project, Association mapping project, Inheritance mapping project, Caching project, Spring integration project |
| 30 |
Certification & Career Path |
Hibernate certification, Job roles, Learning resources, Real-time projects, Best practices |