Hibernate Basics

מק"ט: #4072 | משך קורס: 24 שעות אק'

Persistence is a primary feature in almost every application.
Hibernate provides a powerful implementation of the JPA2 standard persistence platform for Java applications.
In this course the students will learn and understand how to use Hibernate to bridge between the Object Oriented domain and the relational one.
The course will include a lot of ‘hands-on’ experience which is crucial to the understanding of the framework.

הקורס פעיל לקבוצות מטעם ארגונים בלבד, ניתן לשלוח פנייה רק אם מדובר בקבוצה
*שדות חובה

קהל יעד

Java developers, team leaders and project managers

תנאי קדם

  • Familiarity with the Java language
  • Basic knowledge of SQL and relational DB




Introduction to JPA

  • What is Persistence?
  • The Need for ORM Framework
  • Differences between the Object Oriented and the Relational domains


Basic Mapping

  • Working with POJOs
  • XML vs. Annotations
  • Simple Mappings
  • Basic Types
  • Equals and Hashcode


Embedded Objects

  • Solving the Granularity Problem
  • Mapping Embedded Objects
  • Nesting Embeddable


Composite Primary Keys

  • Beyond Basic Primary Keys
  • The Two Mapping Alternatives



  • Inheritance and the DB
  • Mapped Superclass
  • The Three Types of Inheritance Mapping



  • Understanding Relationships
  • One-to-One
  • Many-to-One
  • One-to-Many
  • Many-to-Many
  • Collection Types
  • Cascading



  • The Persistence Manager
  • Understanding the Entity States
  • The Query Language
  • The Event System
  • Typed Queries (by Criteria)


JPA  Advanced Topics

  • Pessimistic Locking and Locks
  • Optimistic Locking and Versioning
  • Caching in JPA
  • JPA Events
  • Monitoring and Troubleshooting
  • Tuning


Hibenrate Extensions

  • Working with Hibernate API (Session).
  • Hibernate Specific Annotations.
  • Hibernate Filters
  • The Any Mapping


Bean Validation

  • Introduction to JSR 303 (Bean Validation)
  • Using Predefined Constraints
  • Using Groups
  • Writing Custom Validations
  • The Hibernate Connection