This training is to be held in english! Targetgroup are Developers with at least one year experience in JPA. Biography of speaker Vlad MihalceaVlad Mihalcea is a Java Champion, CEO of Hypersistence, working as a Developer Advocate for the Hibernate project. He is passionate about enterprise systems, data access frameworks, and distributed systems. He wrote hundreds of articles about Hibernate on his blog, and he has a gold badge for the Hibernate, Java, and JPA tags on StackOverflow. He’s also the author of the High-Performance Java Persistence book.The course agenda (TOC):Day 1Introduction- O/R Mismatch- JPA vs Hibernate- Schema ownership and incremental migrations- Integration testing strategiesHibernate Connection Management- Connection Providers- Connection Monitoring- Statement Logging and 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 CollectionsDay 2Inheritance- 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    Day 3Concurrency 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 ModesCaching- 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