Career Training >> Information Technology Training >> Red Hat Training >> RHD167 Hibernate Essentials Training Seminar
Course ID: 13262 | Course Duration: 3 Days
Course Dates: 
 
Career Training
 

RHD167 Hibernate Essentials Training Class

Course ID: 13262
 
 
Course Snapshot View Dates Add To My Courses Get More Information About This Course Register Online Register By Fax On-Site Training View Printer Friendly Version
 
     
 

RHD167 Hibernate Essentials Training Seminar

Get an introduction to object-oriented software development and become competent with a Hibernate or a Java Persistence API object/relational persistence and query service implementation. Both implementations provide powerful APIs to develop persistent classes following the object-oriented idiom, and both implementations support the use of association, inheritance, polymorphism, composition, and collections with persistent classes. To fully utilize persistent class implementations, you will learn how to create and execute queries using EJB-QL, the portable Hibernate SQL extension (HQL), native SQL, and the object-oriented Criteria and Example API.
Learn how ORM may affect performance and how to tune the performance of the SQL database management system and persistence layer.
This course covers the JBoss, Inc. implementation of the JSR-220 sub-specification for Java Persistence, and it covers the foundational APIs of Hibernate 3.
 
     
     
  Course Details  
     
     
  Agenda  
 

1. Understanding Object/Relational Persistence


Discover persistent data management in the context of object-oriented
applications as well as the relationship of SQL, JDBC, and Java, specifically
the underlying technologies and standards that Hibernate is built upon. Define
the software development challenges that embody the "object/relational
paradigm mismatch", and explore additional generic problems encountered
when creating object-oriented software clients to relational databases. Learn
how the transparent and automatic object/relational mapping capabilities
provided by JPA and Hibernate can be used to overcome the object/relational
paradigm mismatch problem.


2. Getting Started with Hibernate


Get the information necessary to begin a Hibernate project as you're guided
through selecting a development process, setting up a project, authoring the
necessary configuration files and java classes, and running and testing the
application. Once the basic skills are mastered, work with realistic use cases
such as writing a hibernate client to an existing legacy database. Explore the
Hibernate reverse engineering tools, and learn to use JPA/Hibernate annotations
and the JPA/Hibernate EntityManager.


3. Domain Models and Metadata Options


Discover the online auction application, CaveatEmptor, which will be used
throughout the course lecture and the course labs to provide realistic JPA and
Hibernate use cases. Walk through implementing the domain model, and learn sound
design patterns and development practices for persistent classes. Learn how to
address the leakage of concerns, implement transparent and automated
persistence, use established design patterns when working with plain
ordinary/old, Java objects (POJOs) as business objects, value objects, and
entities, and implement POJO associations. Conclude with the object/relational
mapping metadata. Metadata will be presented as XML and as annotation-based.
Check out useful technologies and skills such as XDoclet, handling global
metadata, and manipulating metadata at runtime.


4. Mapping Persistent Classes


In this section, focus on mapping entities with XML and annotations,
fine-grained property and component mappings, and inheritance mapping
strategies. Discover the essential distinction between entities and value types
and how an individual should approach the object/relation mapping of a given
domain model. Learn fundamental mapping options to show how classes and
properties are mapped to tables and columns. Learn how to handle database
identity and primary keys and how to use metadata settings to influence the
loading and storing of objects. Mapping examples are presented in both
Hibernate's native XML format and with JPA annotations and XML descriptors.
Examine fine-grained domain models and see how properties and embedded
components are mapped. Receive guidelines for choosing the appropriate
inheritance mapping strategy when mapping object inheritance hierarchies.


5. Collections and Associations


Most developers new to object/relational mapping techniques have their first
experience working with collections and entity associations with the mapping of
a parent/child relationship. For this reason, many examples of such a
relationship exist in the CaveatEmptor domain, and this association is the focus
of this module. Learn how to map "one" and "many"-valued
relationships between entity classes. The ability for other classes to have an
association to the same target class (not only a single entity class) and the
fact that each entity target instance has its own identity and independent state
complicates what is initially perceived as a "simple" relationship
mapping. You will be guided through these issues (which includes bidirectional
associations and cascading parent to child state) step by step.


6. Working with Objects


Learn greater detail about the life cycle and states of objects, the
Hibernate persistence manager API, EJB3, and the Java Persistence API, and data
filtering and interception. Discover how an object becomes persistent and how it
stops being considered persistent or, more specifically, the method calls and
other actions that trigger these transitions. As the Hibernate persistence
manager is responsible for managing object state, you'll be exposed to this API
first. The main Java Persistence interface in EJB 3.0 is called EntityManager
and, due to its close resemblance to Hibernate API, the EM API is taught in
concert with the Hibernate API. Discuss data filtering and interception. Both of
these capabilities offer transparent "hooks" into the loading and
storing process inside the Hibernate engine. Learn how to influence or
participate in the life cycle of Hibernate and JPA objects without writing
complex application code or without binding the domain model to the persistence
mechanism.


7. Transactions


A comprehensive treatment of transactions. Learn to create and control units
of work in an application and how transactions work at the database level. Work
with transactions in an application based on native Hibernate, Java Persistence,
or the EJB container. Demarcate a transaction boundary to define a unit of work,
and explore concurrency and how concurrent data access can be controlled in an
application with pessimistic and optimistic strategies.


8. Efficient Storing and Loading


Explore transitive state changes, batch and bulk processing, and applying
global fetching strategies. Learn techniques for efficient object storing and
loading. Learn how to optimize and reduce the amount of code that is necessary
to store objects and how to identify the most efficient data retrieval and
processing options. See how transitive persistence can facilitate working with
complex object networks. Discover how enabling cascading options in Hibernate
and Java Persistence applications will significantly reduce the amount of code
that is needed to insert, update, or delete several objects at a time. Address
object retrieval in detail and discuss how large datasets are best handled with
application-oriented batch operations or with bulk operations that execute
directly on the database. Explore fetching strategies and how their use can
optimize loading object networks when an application navigates from one object
to another object.


9. Querying


Learn to work with the various query options available via the Hiberate and
JPA APIs. Write and execute HQL and EJB-QL queries, and explore the Criteria and
Example APIs. Learn to embed native SQL and stored procedures in a query.


10. Application Design and Architecture


Create layered applications with or without the use of managed components and
services, and learn recommended testing practices for applications with
persistence. Learn common Java architectures to illustrate how Hibernate can be
integrated into various scenarios. Explore domain modeling and application
layering as creating layers may affect persistence-related code. Persistence in
rich clients and desktop applications is briefly addressed. View many generic
patterns and strategies that can be implemented in any framework as well as
simple JSE. Discover JEE services and EJBs to show how managed components can
facilitate and reduce the amount of infrastructure coding. The simplicity of the
new EJB 3.0 specification, in particular, allows the developer to benefit
greatly from a container environment. Test layered applications with or without
managed components. Unit, functional, and integration

 
     
     
  Audience  
 

Java developers, database developers, and database administrators

 
     
  Pre-requisites  
  PreReqs  
     
  Comments  
  For all course dates held in Canada, please add 5% GST to the course price. Canadian residents will need to add an additional 7% PST to the course price.  
     
     
 
On-Site Training Bring this RHD167 Hibernate Essentials training class in-house at your facility. Request More Information Request More Information On RHD167 Hibernate Essentials
 
Career Training
 
 
Career Training
  RHD167 Hibernate Essentials Training Course Dates and Locations  
     
  Course ID: 13262 | Course Duration: 3 Days  
     
  Locations:  
     
   User Incentive For Registering on TrainUp.com! Gift card when you register today!  
     
 
Start Date Price      Location/Event Details Register Online Request
More Info
  Print/Fax
Register
12/15/2008 $2,498.00    Anaheim, CA Register Online For The 12/15/2008 Event Request More Information   Register By Fax For The 12/15/2008 Event
 
     
 
On-Site Training Bring this RHD167 Hibernate Essentials training class in-house at your facility. Request More Information Request More Information On RHD167 Hibernate Essentials
 
Career Training
 
 
Career Training
  Browse Our Catalog  
     
  Select a market segment to view more courses

 
     
  Or, select a category to view more Information Technology courses

 
     
  Browse By Category Browse By Category

Browse By Location Browse By Location

Browse New Courses Browse New Courses

 
     
Career Training
 
   
 
 
Career Training
   
Career Training
 
 
 
 






Site Map -- Top Training Courses -- Request On-Site Training

Find Jobs -- Degree Programs -- Training Providers -- Resource Center -- About Us -- Contact us

TrainUp.com Your Career Training Marketplace