Pricing options

Choose how you want to get access to this course

Course curriculum

  • 2

    JPA and Hibernate Explained

    • Why JPA?

    • How To Learn

    • Object Relational Mapping

    • Hibernate vs JPA

    • How JPA works and its advantages

  • 3

    New JPA App Hands-on

    • Setting Up

    • Setting Up H2 Database server

    • New Maven project and adding dependencies

    • Creating a persistence context + Creating a model class

    • Persisting Entities with Entity Manager

    • Understanding Persistence XML

  • 4

    Basic Entity Mapping Annotations

    • Entity Annotations Unit Intro

    • @Table and @Column customizations

    • Temporal, Date and other data types

    • Dealing with Enumerations

    • Transient

    • Primary Key

  • 5

    CRUD operations with JPA

    • Examining hbm2ddl options

    • Entity read operation with JPA

    • Update operation with JPA

    • Deleting an Entity

  • 6

    Entity Relationship Annotations

    • Creating the second entity

    • Modeling a One-to-One relationship

    • Fetching and Fetch Types

    • Relationship directionality and mappedBy

    • OneToMany and ManyToOne

    • Reverse relationship with OneToMany

    • Why Have Cyclical Relationships?

    • Using JoinColumn

    • Many To Many relationship

    • FetchType for ManyToMany

    • Customizing JoinTable and JoinColumns

    • Updating relationships with JPA

    • Deletes and cascades with relationship mappings

  • 7

    Entity Lifecycle

    • Persistence Context as a first level cache

    • Entity Life cycle - Transient and Managed

    • Entity Life cycle - Removed and Detached

    • Entity Life cycle - Clear and refresh methods

  • 8

    Querying with JPQL

    • Querying with JPQL

    • Using like and between in JPQL

    • Joins with relationships

    • Freeform queries and custom result types

    • Avoiding SQL injection with JPQL parameters

    • Named queries

  • 9

    Spring Boot JPA

    • Creating a Spring Boot JPA project

    • Configuring database connection using application properties

    • Persisting an Entity with Spring Boot

    • Injecting and using shared PersistenceContext

    • Using Spring Boot JPA Reposititory

    • Declarative Transactions

    • Understanding Transaction Propogation

    • Read-Only Transactions

  • 10

    Wrap Up

    • Recap