Hibernate ORM
- What is Hibernate?
- Why use Hibernate? (Advantages over JDBC)
- Core concepts: ORM (Object-Relational Mapping)
- Installation and dependencies (Maven/Gradle)
- Hibernate configuration (
hibernate.cfg.xml or annotations)
- Database connection properties
- Entity creation (annotations
@Entity, @Table, etc.)
- Relationship mapping:
- One-to-One (
@OneToOne)
- One-to-Many (
@OneToMany)
- Many-to-One (
@ManyToOne)
- Many-to-Many (
@ManyToMany)
- ID management (
@Id, ID generation strategies)
4- CRUD Operations with Hibernate
- Creating sessions and transactions
- CRUD operations (Create, Read, Update, Delete)
- Exception handling
5- Querying with Hibernate
- HQL (Hibernate Query Language)
- Criteria API (programmatic queries)
- Native SQL queries (
@NamedNativeQuery)
6- Caching in Hibernate
- What is caching?
- Cache levels:
- First-level cache (session)
- Second-level cache (session factory)
- Configuration and usage
7- Performance and Optimization
- Performance best practices
- Lazy loading vs eager loading (
@Fetch, @Lazy)
- Batch processing and pagination
8- Transactions and Concurrency
- Transaction management in Hibernate
- Transaction strategies (
@Transactional)
- Concurrency: optimistic locking (
@Version) vs pessimistic locking
9- Spring Integration
- Configuring Hibernate with Spring
- Using
SessionFactory and HibernateTemplate
- Introduction to Spring Data JPA
10- Practical Use Cases and Best Practices
- Complete example: Hibernate application
- Common pitfalls and solutions
- Conclusion and future of Hibernate
0 Comments