Skip to main Content

English Delivery Only: JPA and Hibernate

  • Course Code HIBI
  • Duration 3 days

Public Classroom Price

eur1,980.00

excl. VAT

Request Group Training Add to Cart

Course Delivery

This course is available in the following formats:

  • Company Event

    Event at company

  • Public Classroom

    Traditional Classroom Learning

  • Virtual Learning

    Learning that is virtual

Request this course in a different delivery format.

Course Overview

Top

*** Course delivered in English (UK - (GMT)) ***

JPA and Hibernate Course Overview

Hibernate is the primary JPA implementation and the most popular Java ORM framework. It dramatically reduces boilerplate code,eliminates vendor spe

Course Schedule

Top
    • Delivery Format: Virtual Learning
    • Date: 09-11 February, 2026 | 10:30 AM to 6:00 PM
    • Location: Virtual (W. Europe )
    • Language: English

    eur1,980.00

Target Audience

Top

Who will the Course Benefit?

The JPA and Hibernate course is aimed at developers involved in the building of complex enterprise-level Java applications.

Course Objectives

Top

Course Objectives

This course aims to provide the delegate with the knowledge to be able to develop (or contribute to the development of) enterprise-level Java applications that use JPA and Hibernate to read from and write to relational databases.

Course Content

Top

JPA and Hibernate Training Course

Course Contents - DAY 1

Course Introduction

  • Administration and Course Materials
  • Course Structure and Agenda
  • Delegate and Trainer Introductions

Session 1: INTRODUCTION TO HIBERNATE

  • The problems with JDBC
  • About ORM
  • The relationship between JPA and Hibernate
  • Hibernate architecture
  • Installing Hibernate
  • Configuring the SessionFactory (XML and Java)
  • Obtaining and using a Session (basic)

Session 2: BASIC ENTITY MAPPING

  • About entity mapping
  • XML mapping
  • Annotation mapping
  • Entity types
  • Value types
  • Embeddable types
  • Collections
  • Key generation

Session 3: THE HIBERNATE SESSION

  • About the Hibernate Session
  • Transient,persistent,and detached entity states
  • Hibernate transactions
  • Using the Session to perform basic CRUD operations

JPA and Hibernate Training Course

Course Contents - DAY 2

Session 4: COMPOSITE MAPPING

  • About composite mapping
  • One-to-one
  • One-to-many
  • Many-to-many
  • Uni vs bi-directional associations
  • Cascading
  • Eager vs lazy fetching
  • The n+1 problem

Session 5: INHERITANCE MAPPING

  • About inheritance mapping
  • Mapped superclass
  • Single table
  • Joined table
  • Table per class
  • Polymorphic queries

JPA and Hibernate Training Course

Course Contents - DAY 3

Session 6: HIBERNATE QUERY LANGAUGE (HQL)

  • About Hibernate Query Language (HQL)
  • Basic queries
  • Querying for a subset of the class's fields
  • Literal,ordinal,and named parameters
  • Single result queries
  • Functions
  • Queries with joins
  • Eager fetching
  • Ordering
  • Grouping
  • Native queries
  • Named queries
  • An introduction to criteria queries

Session 7: THE JPA ENTITYMANAGER

  • About the JPA EntityManager
  • Configuring the EntityManagerFactory (XML and Java)
  • Obtaining and using an EntityManager (basic)
  • About the Persistence Context
  • About the JPA Query Language (JPQL)
  • JPA EntityManager vs Hibernate Session

Session 8: PERFORMANCE TUNING

  • Discovering performance issues
  • Choosing the right fetch type
  • Query-specific fetching
  • Using Sets,not Lists,for many-to-many associations
  • Having the database do the heavy lifting
  • First and second-level cache
  • Performing bulk updates

Course Prerequisites

Top

Requirements

Delegates attending this course should be competent Java developers who have a good understanding of OO principles and are able to build simple applications that exploit APIs including Collections,IO,and JDBC in particular. This knowledge can be obtained by attendance on the pre-requisite Java Programming 1 / Java Developer course.

Follow on Courses

Top

Further Learning

  • Developing Applications with Java EE
  • Core Spring