Advanced JPA Programming

Effective Java Persistence Architecture Programming

The Advanced JPA Programming training course is a follow-up course to the Introduction to JPA course

In this course, you’ll learn advanced JPA programming concepts, like database optimization strategies, JPA provider optimizations, working with complex data models, and implementing caching strategies. This course is ideal for developers using JPA in a production environment who need to address database-related scaling issues.

Course Summary

Learn the knowledge and skills required for developers to use JPA to its fullest.
Developers with Java and JPA experience.
Skill Level: 
Learning Style: 

Hands-on training is customized, instructor-led training with an in-depth presentation of a technology and its concepts, featuring such topics as Java, OOAD, and Open Source.

Hands On help
2 Days
Productivity Objectives: 
  • Create dynamic run-time queries using the Criteria API
  • Design complex schema mappings
  • Perform simple JPA tuning
Advanced JPA Programming is part of the J2EE Training / Java EE Training curriculum.
All of our Java EE courses can delivered using Java EE 5, Java EE 6 or Java EE 7. The Advanced JPA Programming training course can be taught using the Java IDE - NetBeans, Eclipse, IntelliJ, etc. *and* Java EE Application Server (JBoss, Glassfish , WebLogic , WebSphere , Tomcat, etc.) of your choice.

What You'll Learn

In the Advanced JPA Programming course, you will learn:

  • Review of JPA Concepts
  • Review of JPA Querying
  • Introduction to JPA Criteria API
    • What is it?
    • How does it work?
    • When to use it
    • Building Criteria API queries
    • Performing bulk updates and deletes
  • Working with Transactions
    • Review of Transaction concepts
    • Managing Transactions
    • Using the JTA to manage transactions
    • Performing commits and rollbacks
    • Unsynchronized Persistence Context
  • Working with Locking
    • Review of locking concepts
    • Working with optimistic locking
    • Working with pessimistic locking
  • Advanced JPA Concepts
    • Inheritance and Mapped Super Classes
    • Modeling relationships as Maps
    • Using Collections as embedded types
    • Working with nested embedded classes
  • Entity Lifecycle Handling
    • PrePersist, PreRemove, and PreUpdate
    • PostPersist, PostRemove, PostUpdate, and PostLoad
    • CDI Listeners
  • JPA Performance Tuning
    • Lazy and eager fetching
    • Mass updates and removals
    • Configuring second-level caching
    • Hibernate specific tuning options
    • EclipseLink specific tuning options

Meet Your Instructor

Michael headshot

Michael is a practicing software developer, course developer, and trainer with DevelopIntelligence. For the majority of his career, Michael has designed and implemented large-scale, enterprise-grade, Java-based applications at major telecommunications and Internet companies, such as Level3 Communications, US West/Qwest/Century Link, Orbitz, and others.

Michael has a passion for learning new technologies, patterns, and paradigms (or, he has a tendency to get bored or disappointed with current ones)....

Meet Michael »
Jean Photo

Jean brings years of development experience into her teaching, making the learning experience practical for her students. Originally a Smalltalk developer, Jean has an expansive knowledge of object-oriented (OO) development, analysis, and design. Jean has worked in every stage of the software development process for a variety of businesses – from small non-profits, to government agencies, to global enterprises.

Jean was also one of the top instructors at Sun Microsystems in North America and Europe....

Meet Jean »
Anil Photo

Anil is a seasoned software engineer with over 16 years of Java development experience.

Anil started his career as a Unix programmer, slinging C-code, writing shell scripts, and teaching others how to use Unix back when Unix was still a toddler. Anil’s expertise in Unix, C, and C++ allowed him to become a member of Technical Staff at ATT / Bell labs. During his tenure at Bell Labs, Anil led the creation of software tools that simulated network traffic, in particular, cellular...

Meet Anil »
Marnie picture

Marnie brings 15 years of experience delivering programming related training. During that time she has taught for top-technology companies including: Sun (and later Oracle) certified Java classes, RedHat Certified JBoss administration courses, Spring Source Certified Spring and Hibernate courses. Her classes have run the gamut from introduction to programming classes to Java EE web services and much of the Java EE stack in between.

She has a passion for teaching, which is evident in her presentations and...

Meet Marnie »

Get Custom Training Quote

We'll work with you to design a custom Advanced JPA Programming training program that meets your specific needs. A 100% guaranteed plan that works for you, your team, and your budget.

Learn More

Chat with one of our Program Managers from our Boulder, Colorado office to discuss various training options.

DevelopIntelligence has been in the technical/software development learning and training industry for nearly 20 years. We’ve provided learning solutions to more than 48,000 engineers, across 220 organizations worldwide.

About Develop Intelligence
Di Clients
Need help finding the right learning solution?   Call us: 877-629-5631