HIBERNATE
-------------------
About Hibernate Training
Hibernate is the most popular object-relational mapping framework for Java environments. Object
relational mapping in large enterprise applications is difficult. In this class, students learn object-relational
mapping concepts and the various issues and options available in Java to address object persistence.
With these fundamentals, the course then explores the basics of Hibernate object persistence and
configuration. It also digs into the details of Hibernate mapping, queries, transactions, and concurrency.
This course is loaded with lots of hands on examples and deals with maintenance and performance
issues. After taking this class, developers will be able to build faster, more flexible and easier to maintain
application persistence layers with the Hibernate framework.
Hibernate Course Prerequisite
Students should have a good understanding of the Java Programming language.
A basic understanding of relational databases and SQL is very helpful.
Hibernate Training Course Content Objective
Understand the challenges of mapping objects to relational databases
Learn the architecture of Hibernate
Know how to setup and configure Hibernate for a Java Project
Learn to map Java classes and object associations to relational database tables with Hibernate
mapping files
Study Hibernate’s strategies for mapping Java inheritance trees to relational database tables
Learn the Hibernate Query Language and Criteria for retrieving Java objects
Explore Hibernate’s Caching Architecture
Hibernate Training Course Duration
Normal Track 45 Working days, daily one and half hour
Fast Track 30 Working days, daily two hours
Hibernate Training Course Overview
Advantages of Hibernate compared to JDBC
Introduction
ORM (Object Relational Mapping)
Hibernate Resources
Configuration file
Mapping file
Persistent class or POJO
Client application.
Hibernate Architecture
Installation and Directory Structure
Hibernate Data Types
First Application using Hibernate
Hibernate API
Configuration
SessionFactory
Session
Transaction
Object Life cycle in Hibernate
Transient object
Persistent object
Detached object
CRUD operations using Session methods.
save, persist, SaveOrUpdate
update, merge, delete
load, get
flush, evict, clear etc
Versioning
Primary key Generators
Assigned
Increment
Sequence
Hilo
Seqhilo
Identity
Foreign
Native
UUID
Custom generator
Hibernate Query Language (HQL)
Joins in Hibernate
Batch processing and Native SQL
Criteria API
Criteria with projections
Inheritance Mapping
Table per class
Table per sub class
Table per concrete class
Component Mapping
Custom Mapping
Collection Mapping
<list>
<set>
<map>
<bag>
Mapping array
Sorting collections
Association Mapping
one to one
one to many
many to one
many to many
Uni directional
Bi directional
Explanation on inverse and cascade attributes
Caching
First level Cache(Session cache)
Second level Cache(SessionFactory cache)
Query level cache
Connection Pool
Default connection pool
Server supplied pool
Third party vendor connection pool
Transactions and Concurrency
Programmatic transactions with JTA
Optimistic Concurrency control
Pessimistic Concurrency control
Hibernate Pagination
Hibernate Filter
Hibernate Interceptor
Connecting with Multiple Databases(Oracle, HypersonicSQL)
Integrating Hibernate with Servlet
Integrating Hibernate with Struts
Working with Hibernate Annotations
IDE: Eclipse, Netbeans