Mastering Spring Data JPA From Basics to Advanced
What you’ll learn
Setting up your development environment
Exploring Spring Data JPA fundamentals
Mastering repositories and the entity lifecycle
Unraveling entity relationships
Understanding inheritance
Leveraging embedded IDs and entities
Querying data
Named queries
Specification
Requirements
No programming experience is required
Description
Course descriptionEmbark on a comprehensive journey through the world of Spring Data JPA, and become an expert in creating high-performance, data-driven applications. This in-depth course is tailored for developers seeking to master Spring Data JPA, covering everything from basic concepts to advanced techniques. By enrolling in this course, you will unlock the full potential of Spring Data JPA and gain the confidence to tackle complex real-world challenges.Key topics covered in this course include:Setting up your development environment: Learn how to connect to MySQL and PostgreSQL databases using Docker, ensuring a smooth and practical learning experience.Exploring Spring Data JPA fundamentals: Dive into the core concepts of Spring Data JPA, including entities, primary keys, generation types, columns, and tables. Get hands-on experience through practical examples that solidify your understanding of these essential annotations.Mastering repositories and the entity lifecycle: Understand the repository hierarchy, entity lifecycle, and how to leverage the power of Spring Data JPA to manage your data efficiently.Unraveling entity relationships: Delve into various relationship types, such as one-to-one, one-to-many, and many-to-many, while learning best practices for modeling and managing complex relationships between entities.Understanding inheritance: Gain a deep understanding of inheritance strategies in Spring Data JPA and how to model and query hierarchical data effectively.Leveraging embedded IDs and entities: Discover how to use embedded IDs and entities to model composite primary keys and embeddable types, enhancing the reusability and maintainability of your code.Querying data: Master the art of querying data using various techniques, including JPQL, native SQL queries, and the Criteria API.Named queries: Learn how to use named queries for better organization, maintainability, and performance optimization.Specification: Unlock the full potential of Spring Data JPA Specifications to create dynamic and type-safe queries, which can be combined and reused for ultimate flexibility and maintainability.This comprehensive course is designed to provide you with the knowledge and skills necessary to excel in your career as a Spring Data JPA developer. With a balanced mix of theory, hands-on examples, and best practices, you will be well-equipped to create efficient and scalable applications using Spring Data JPA. Enroll today and take the first step towards becoming a Spring Data JPA expert!
Overview
Section 1: Bootstrap the course
Lecture 1 Setup Postgres DB server (Docker image)
Lecture 2 Setup MySQL DB server (Docker image)
Lecture 3 Create a new Spring boot project
Lecture 4 Setup the DB and create a new schema (Postgres)
Lecture 5 Setup the DB and create a new schema (MySQL)
Lecture 6 Connect the application to the database (Postgres)
Lecture 7 Connect the application to the database (MySQL)
Lecture 8 The persistence project we will build
Section 2: Introduction to Spring Data JPA
Lecture 9 Hibernate VS Spring Data JPA
Lecture 10 Create the first java Class
Lecture 11 Transform the java Class to an @Entity
Lecture 12 @Id annotation
Lecture 13 @GeneratedValue annotation
Lecture 14 Strategy AUTO
Lecture 15 @SequenceGenerator annotation
Lecture 16 @TableGenerator annotation
Lecture 17 @Column annotation overview
Lecture 18 Best usages of @Column
Lecture 19 Have more control over your entity using @Table
Section 3: Repositories
Lecture 20 Repositories overview
Lecture 21 Deep understanding of Repositories
Lecture 22 Discover the repositories as code
Lecture 23 Create your first Repository
Lecture 24 Create a command line runner
Lecture 25 Insert some data into the database
Lecture 26 Entity lifecycle
Section 4: Spring Data JPA Relationships
Lecture 27 Why creating relationships between entities
Lecture 28 The difference between unidirectional and bidirectional relationship
Lecture 29 Create the course entity
Lecture 30 Create the section entity
Lecture 31 Create the lecture entity
Lecture 32 Create the resource entity
Lecture 33 Many to many relationship
Lecture 34 One to many
Lecture 35 One to many section and lecture
Lecture 36 One to one relationship
Lecture 37 Check if your code is correct
Section 5: Playing with Inheritance
Lecture 38 Inheritance overview
Lecture 39 Inheritance VS Composition
Lecture 40 @MappedSuperclass
Lecture 41 Create the child classes
Lecture 42 Single table strategy
Lecture 43 Single table strategy – Discriminator Values
Lecture 44 Test the single table strategy strategy
Lecture 45 Joined table strategy
Lecture 46 Table per class strategy
Lecture 47 Polymorphic Queries
Section 6: Embedded entities & ID
Lecture 48 Embedding Overview
Lecture 49 @EmbeddedId
Lecture 50 Use the embedded ID
Lecture 51 Test the embedded ID
Lecture 52 Create Embedded Address class
Lecture 53 @Embaddable annotation
Section 7: Querying data
Lecture 54 Derived query methods explained
Lecture 55 FindAllBy methods explained
Lecture 56 Play with FindBy method
Lecture 57 Add Java Faker dependency
Lecture 58 Insert fake data
Lecture 59 Exercice
Lecture 60 Update data
Lecture 61 Update data using @Modifiying
Section 8: Named queries
Lecture 62 Definition and advantages of named queries
Lecture 63 Fetch data with @NamedQuery
Lecture 64 Update data with @NamedQuery
Beginners,Professionals looking to deeply understand Spring Data JPA
Course Information:
Udemy | English | 4h 48m | 1.75 GB
Created by: BOUALI Ali
You Can See More Courses in the Developer >> Greetings from CourseDown.com