Hibernate - Java Persistence API (JPA) Training
This Hibernate JPA course offers a comprehensive and detail-oriented treatment of the Java Persistence API (JPA) using Hibernate for developers interested in implementing persistence tiers for enterprise applications. We cover JPA basics including simple object/relational concepts and annotations, persistence contexts and entity managers, and configuration via persistence.xml.
Description | Days | Price (exc vat) | |
---|---|---|---|
Java Hibernate (JPA)* |
3 | ZAR | USD |
R 14,500 | $ 1,250 |
|
Prerequisites
All delegates must have at least one year of full-time Java™ development experience and an excellent understanding of relational databases and SQL.
Course Outline
Introduction to Hibernate JPA
- Object/Relational Mapping
- Mismatches Between Relational and Object Models
- The Java Persistence API
- JPA History
- JPA Architecture
- Entity Metadata
- The Entity Manager
- JPA Providers
Object/Relational Mapping
- Annotations
- JavaBean Standards
- Property, Field, and Mixed Access
- Table and Column Mapping
- Primary Keys and Generation
- Type Mappings
- Temporal and Enumerated Types
- Embedded Types
- Entity Relationships
- @ManyToOne Relationships
- @OneToOne Relationships
- @OneToMany Relationships
- @ManyToMany Relationships
- Eager and Lazy Loading
Entity Managers
- Putting Entities to Work
- persistence.xml
- Entity State and Transitions
- Managing Transactions
- Persistence Operations
- Creating Queries
- Named Queries
- Query Parameters
- Native Queries
JPQL
- The Java Persistence Query Language
- Query Structure
- Path Expressions
- Filtering
- Scalar Functions
- Operators and Precedence
- between, like, in
- is null, is empty
- Ordering
- Aliases
- Grouping
- Aggregate Functions
- Joins
- Constructors
Advanced Mappings
- Inheritance Strategies
- Single-Table Strategy
- Joined-Table Strategy
- Table-Per-Concrete-Class Strategy
- Querying Over Inheritance Relationships
- Secondary Tables
- Composite Primary Keys
- @IdClass and @EmbeddedId
- Derived Identifiers
- @ElementCollection
- Default Values
- @Version Fields
- Cascading and Orphan Removal
- Detachment and Merging
The Criteria API
- History of the Criteria API
- Criteria Query Structure
- The MetaModel API and Query Type Safety
- Tuples
- Joins
- Predicates
- Building Expressions
- Ordering
- Grouping
- Encapsulating Persistence Logic
- Façades
- Range Queries
Lifecycle and Validation
- Lifecycle Events
- Method Annotations
- Entity Listeners
- JSR-303 Validation
- Constraint Annotations
- Validation Modes
- Validation Groups
Locking and Caching
- Concurrency
- Optimistic Locking
- Optimistic Read Locking
- Optimistic Write Locking
- Pessimistic Locking
- Caching
- Persistence Context as Transactional Cache
- Shared (2nd-level) Cache
- Locking and Caching "Do's and Don'ts"