High Performance Java Persistence Training

  • Learn via: Classroom / Virtual Classroom / Online
  • Duration: 1 Day
  • Price: Please contact for booking options
We can host this training at your preferred location. Contact us!

The High-Performance Java Persistence training is aimed to level up your team’s data access skills, covering JDBC, Hibernate, and many database essential topics for Oracle, SQL Server, MySQL or PostgreSQL.


About The Trainer

Vlad Mihalcea, is CEO of Hypersistence and works as a Developer Advocate for the Hibernate project. He is also author of the book High-Performance Java Persistence.


Day 1 - Introduction

  • O/R Mismatch
  • JPA vs Hibernate
  • Schema ownership and incremental migrations
  • Integration testing strategies

Hibernate Connection Management

  • Connection Providers
  • Connection Monitoring
  • Statement Logging and the statement count validator

Basic Mappings

  • Types
  • Entity
  • Embedded
  • JPA Identifiers
  • Legacy and enhanced identifier generators (hilo, pooled-lo)

Relationships

  • Many-to-One
  • One-to-One
  • One-to-Many
  • Many-to-Many
  • Embedded Collections

Day 2 - Inheritance

  • Single table inheritance caveats
  • Joined table inheritance caveats
  • Composition vs inheritance

Entity state transitions

  • Flushing basics
  • AUTO flush caveats
  • Dirty checking
  • Flush operation order
  • Bytecode enhancement dirty checking

Batch updates and ResultSet fetching

  • JDBC batching
  • How to batch INSERT and UPDATE statements
  • How to batch DELETE statements

Fetching

  • Natural key
  • DTO projections
  • Entity queries
  • LAZY vs EAGER
  • Query-time fetching

Concurrency control

  • Isolation levels and database concurrency control
  • Preventing lost updates in long conversations
  • Logical vs physical clock optimistic locking
  • Hibernate collections optimistic locking
  • Version-less optimistic locking
  • Java Persistence locking
  • Explicit OPTIMISTIC Lock Mode
  • OPTIMISTIC_FORCE_INCREMENT Lock Mode
  • PESSIMISTIC_FORCE_INCREMENT Lock Mode
  • PESSIMISTIC_READ and PESSIMISTIC_WRITE Lock Modes

Caching

  • Database caching
  • Application caching
  • Second-level cache entries
  • Cache synchronization strategies
  • READ_ONLY CacheConcurrencyStrategy
  • NONSTRICT_READ_WRITE CacheConcurrencyStrategy
  • READ_WRITE CacheConcurrencyStrategy
  • TRANSACTIONAL CacheConcurrencyStrategy
  • Collection Cache
  • Query Cache


Contact us for more detail about our trainings and for all other enquiries!

Upcoming Trainings

Join our public courses in our Istanbul, London and Ankara facilities. Private class trainings will be organized at the location of your preference, according to your schedule.

Classroom / Virtual Classroom
05 April 2024
Istanbul, Ankara, London
1 Day
Classroom / Virtual Classroom
19 April 2024
Istanbul, Ankara, London
1 Day
Classroom / Virtual Classroom
23 April 2024
Istanbul, Ankara, London
1 Day
Classroom / Virtual Classroom
27 May 2024
Istanbul, Ankara, London
1 Day
Classroom / Virtual Classroom
04 June 2024
Istanbul, Ankara, London
1 Day
Classroom / Virtual Classroom
15 June 2024
Istanbul, Ankara, London
1 Day
Classroom / Virtual Classroom
21 June 2024
Istanbul, Ankara, London
1 Day
Classroom / Virtual Classroom
02 July 2024
Istanbul, Ankara, London
1 Day
By using this website you agree to let us use cookies. For further information about our use of cookies, check out our Cookie Policy.