Advanced Hibernate training is targeted toward Java developers who wish to extract the full power of the Hibernate O/R Mapping framework. The primary target audience consists of Java developers who work with SQL-based database systems, database developers who are looking for an introduction to object-oriented software development and database administrators interested in how ORM affects performance and how to tune the performance of the SQL database management system and persistence layer.
Prerequisites
The prerequisite skills for this class are the following:
Good Hibernate knowledge.
Competency with the Java language
Knowledge of OOAD concepts
Familiarity with the UML
Experience with a dialect of SQL.
Using the JDK and creating the necessary environment for compilation and execution of a Java executable from the command line.
Track:
Part of The JBoss Enterprise Framework Platform curriculum, which includes:
JB163 JBoss Portal
JB167 Hibernate Essentials
JB439 JBoss Clustering
JB449 JBoss jBPM
JB451 JBoss Rules
JB453 JBoss ESB
MM157 MetaMatrix Introduction
Code:
JB267
Length:
2 days
Type:
Instructor-Led
Certified By:
Red Hat
Tuition:
$1,998
This course is taught by Certified Red Hat instructors. There is a difference. Learn More
This course is in the following categories. Click the categories to find similar courses and topics of interest.
We kick off this training with a quick Hello World example, to refresh our Hibernate basics. Right after this we delve into more advanced topics.
Advanced class and property mappings
We have a look at the different mapping metadata facilities available for and in Hibernate. The standard JPA annotations are discussed as well as some Hibernate annotation extensions. Hibernate's mapping type system is an important supporting feature for fine-grained Java domain models and you'll learn how best design your persistent classes. We talk about the built-in mapping strategies for entities, simple value types, and class inheritance. Custom extension of the Hibernate type system is another topic in this training module.
Associations and collections
Complex associations between entities, singlevalued and with collections, often require advanced Hibernate mapping knowledge. We discuss various kinds of mappings, as well as Hibernate's fully polymorphic behavior. We then apply this knowledge in our lab exercise.
Transactional processing
Hibernate defines several object states and provides APIs to change the state of an object. We show you how to use these APIs correctly, even in tricky situations. You will use Hibernate data filters to access regional and temporal data. We have a look at more advanced transaction processing concepts around optimistic locking, pessimistic locking, and longrunning application transactions.
Querying and fetching data
Advanced object retrieval options and the correct usage of Hibernate's association fetching strategies are the topics of this training module. The new Criteria and Example API is also part of our discussion, as well as advanced HQL, EJB-QL (using EJB 3.0 persistence API), and native SQL queries. The lab includes exercises around loading and storing objects efficiently.
Application design
A popular part of the Hibernate training, this module shows you how to design and implement a persistence layer using Hibernate. You will learn how to correctly handle SessionFactory and Session in two-tiered and three-tiered applications, and the best practices for transaction handling. You will implement event interception in the persistence layer, for audit logging and other special cases. You might also be interested in Hibernate's data conversion capabilities, for automatic XML marshaling, or the representation of domain objects in nested HashMaps.
Legacy system integration
Many Hibernate developers have to work with existing database schemas and existing data. Unfortunately, these schemas are usually not in best shape, and the data might be difficult to map to Java objects. We discuss reverse engineering using the Hibernate toolset, as well as advanced Hibernate mapping techniques, such as formula-based mappings, natural- and composite keys, and triggers.
Deployment and administration
Getting Hibernate up and running is usually very easy, and deployment requires only a single configuration in most cases. We show you more advanced configuration options and tricks in this training module, including deployment of Hibernate as a JMX and JCA service in J2EE environments. Once your application is deployed, administration becomes an important issue. You will learn how to use logging efficiently and how to detect performance issues using runtime monitoring with the new statistics interfaces.
Tuning
In our last training module we'll optimize database access - our goal is to execute the optimal SQL queries in all situations. You will learn data caching basics and when to use caching. We then enable Hibernate's dual layer caching system in our labs, as well as the cache for query results.
When you take a certified course with ExitCertified, you are learning from
the creators of the products you use. Our commitment to your IT
community, along with our authorization to deliver certified courses,
ensures you receive a premium training experience.