Coming soon!
Microservices course
Enroll in the waiting list now and secure an exclusive early-bird discount as soon as the course becomes available.
Course description
Embark 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!
Hi, I’m Ali Bouali - {Alibou}
Since embarking on my software development journey in 2011, I have had the privilege of working on a wide array of projects for various companies. This diverse experience has enabled me to acquire proficiency in numerous technologies, including Java, Spring, Spring Boot, Hibernate, AWS, and more. The expertise I have cultivated over the years has been instrumental in propelling me to the level of a senior software engineer.
As a developer, my unrelenting drive to excel stems from my fascination with the seamless interoperability of diverse programming languages within a single ecosystem, despite their fundamental differences. In essence, it is the synergy of the technical stack that truly captivates me. The ever-evolving landscape of software development fuels my passion for learning new technologies and continually expanding my skillset.
Having accrued years of valuable knowledge and experience, I felt compelled to share my insights with others. Thus, I established a YouTube channel and a personal website, through which I publish informative videos and courses aimed at empowering fellow developers to enhance their expertise and proficiency in software development.
Course Curriculum
More than 5 hours of video content
- Setup Postgres DB server (Docker image) (5:05)
- Setup MySQL DB server (Docker image) (2:29)
- Create a new Spring boot project (3:46)
- Setup the DB and create a new schema (Postgres) (4:23)
- Setup the DB and create a new schema (MySQL) (1:52)
- Connect the application to the database (Postgres) (9:20)
- Connect the application to the database (MySQL) (5:53)
- The persistence project we will build (5:53)
- Hibernate VS Spring Data JPA (3:15)
- Create the first java Class (6:16)
- Transform the java Class to an @Entity (2:59)
- @Id annotation (4:24)
- @GeneratedValue annotation (5:19)
- Strategy AUTO (6:28)
- @SequenceGenerator annotation (5:42)
- @TableGenerator annotation (4:31)
- @Column annotation overview (4:14)
- Best usages of @Column (7:20)
- Have more control over your entity using @Table (3:52)
- Why creating relationships between entities (2:31)
- The difference between unidirectional and bidirectional relationship (3:38)
- Create the course entity (2:08)
- Create the section entity (0:50)
- Create the lecture entity (0:38)
- Create the resource entity (1:14)
- Many to many relationship (8:38)
- One to many (5:08)
- One to many section and lecture (2:20)
- One to one relationship (4:42)
- Check if your code is correct (2:34)
- Inheritance overview (3:06)
- Inheritance VS Composition (2:34)
- @MappedSuperclass (12:45)
- Create the child classes (3:18)
- Single table strategy (6:33)
- Single table strategy - Discriminator Values (3:52)
- Test the single table strategy (4:07)
- Joined table strategy (8:12)
- Table per class strategy (5:07)
- Polymorphic Queries (3:10)
Frequently Asked Questions
How long will I have access to the course materials? Do they expire?
Once enrolled in the course, you will have indefinite access to the materials. They do not expire, and there is no time limit. You can revisit the lessons as often as you like, and the platform will track your progress, allowing you to resume where you left off at any time.
Is support provided?
Absolutely! I personally handle support inquiries via email. Please feel free to reach out and ask questions.
What if I am dissatisfied with the course? Can I request a refund?
That's absolutely fine, of course. If the material doesn't work for you, definitely get in touch within 30 days and you'll get a full refund for any single course package. It's all documented in the refund policy here.
Are there any prerequisites for this course?
Before going through this course, you do need a basic understanding of Java as well as Spring. The material is focused on Spring Data JPA, not the basics of JPA.
Example Featured Products
Showcase other available courses, bundles, and coaching products you’re selling with the Featured Products block to provide alternatives to visitors who may not be interested in this specific product.