118. Java Persistence with
Hibernate
Rev. 3.2.1
This course is now available directly from our partner, Capstone Courseware.
This course develops skills in using the Object/Relational Mapping
tool Hibernate. The course uses the latest release version of Hibernate, 3.2,
which is directly related to the new EJB 3.0 version defined in Java EE 5.0.
By the end of the course, students will be prepared to set-up and
use Hibernate as the persistence mechanism in Java applications.
LEARNING OBJECTIVES
·
Configure Hibernate using both properties files
and XML documents.
·
Create mapping documents for Java classes.
·
Define object relationships and build mapping
documents to model them.
·
Use components to model composition
relationships in the object model.
·
Work with one-to-one, many-to-one, and
many-to-many relationships.
·
Evaluate the different approaches to modeling
inheritance and polymorphism in database schema.
·
Build Java applications that use Hibernate to
create, retrieve, update, and delete objects.
·
Use Hibernate's Criteria Query API to do
searches and Query By Example.
·
Work with Hibernate Query Language (HQL) to
generate object-based SQL.
·
Understand Hibernate sessions and transactions
and their impact on performance.
Course Duration: 2 days.
Prerequisites:
·
Intermediate knowledge of Java programming;
Course 103 is excellent preparation
·
Some familiarity with SQL, relational databases,
and the Java Database Connectivity (JDBC) interfaces will be helpful; Course
168 is an optional precursor to this course
1.
Introduction to Hibernate
The Object/Relational Mapping Problem
JDBC
The Hibernate Alternative
Hibernate Architecture and API
2.
Configuring Hibernate
The Hibernate Distribution
Required Libraries
Configuration Files
hibernate.properties
hibernate.cfg.xml
Programmatic Configuration
3.
Hibernate Persistence
The SessionFactory Interface
Object States
The Session Interface
Transactions
Session Duration
The Data Access Object Pattern
4.
Object/Relational Mapping
O/R Mapping Issues
The Mapping Vocabulary
Primary Keys and Identity
ID Generators
Mapping Associations
Unidirectional and Bidirectional Associations
Managing Cardinality
Strategies for Mapping Inheritance
5.
The Criteria Query API
Criteria Queries
The Criteria Interface
Using Restrictions
Windowing Results
Sorting
Traversing Associations
Projections and Aggregates
Grouping
Query By Example (QBE)
6.
Hibernate Query Language (HQL)
Building HQL Queries
The Select Clause
The Where Clause
Named and Entity Parameters
Associations and Aggregates
Bulk Updates and Deletes
Named Queries
Using Native SQL
Appendix A. Learning
Resources
System Requirements
Hardware – minimal: 500 MHz, 256 meg RAM, 500 meg disk space
Hardware – recommended: 1.5 GHz, 512 meg RAM, 1 gig disk
space.
Operating system: Tested on Windows XP Professional.
Course software should be viable on all systems which support a J2SE 5.0 JDK..
Software: All
free downloadable tools.