Course curriculum

  1. 2
    • Why JPA?

    • How To Learn

    • Object Relational Mapping

    • Hibernate vs JPA

    • How JPA works and its advantages

  2. 3
    • 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

  3. 4
    • Entity Annotations Unit Intro

    • @Table and @Column customizations

    • Temporal, Date and other data types

    • Dealing with Enumerations

    • Transient

    • Primary Key

  4. 5
    • Examining hbm2ddl options

    • Entity read operation with JPA

    • Update operation with JPA

    • Deleting an Entity

  5. 6
    • 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

  6. 7
    • 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

  7. 8
    • 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

  8. 9
    • 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

  9. 10
    • Recap

Pricing options

Explain how different pricing options might be valuable to different segments of your audience.