Zero to Hero: Master Java SpringBoot & JPA with Projects
Ends soon! Keep adding new skills with 10,000+ programs for $239 (usually $399). Save now.
Zero to Hero: Master Java SpringBoot & JPA with Projects
Included with
Ask Coursera
Recommended experience
Recommended experience
What you'll learn
Build and manage RESTful web services using Spring Boot and annotations.
Master ORM with Hibernate and JPA to implement advanced database operations.
Implement secure user authentication, logging, and error handling in projects.
Upgrade Java and Spring Boot versions for enhanced application performance.
Skills you'll gain
Details to know
See how employees at top companies are mastering in-demand skills
There are 13 modules in this course
Updated in May 2025.
This course now features Coursera Coach! A smarter way to learn with interactive, real-time conversations that help you test your knowledge, challenge assumptions, and deepen your understanding as you progress through the course. Embark on an immersive journey into the world of Java Spring Boot and JPA, where you’ll master the fundamentals and advanced concepts to build robust applications. Starting with an introduction to essential tools and concepts, you'll progress to creating and managing RESTful web services, leveraging MVC architecture, and understanding powerful annotations like @RequestParam and @PathVariable. Dive deeper into the layered architecture and ORM frameworks, learning Hibernate and JPA essentials for database management. You’ll create APIs, perform CRUD operations, and implement advanced features like profiles, configurations, and property conversions. Each module is rich with hands-on examples, ensuring you build confidence with practical coding skills. In the latter stages, enhance your knowledge of Git workflows, implement secure user authentication, and leverage AOP for error handling. Explore logging, API documentation with Swagger, and application health monitoring. You'll also work on complex entity relationships and learn to upgrade Spring Boot and Java versions efficiently. This course is ideal for developers eager to build scalable and maintainable applications. Whether you're a beginner or looking to sharpen your skills, a basic understanding of Java is recommended. Join now to transform your expertise with real-world projects and advanced Spring Boot practices!
In this module, we will lay the groundwork for your Spring Boot journey. Starting with an overview of the course, you'll install the required tools, generate and explore a Spring Boot starter project, and dive into foundational concepts like the Spring Framework, MVC design patterns, and RESTful web services with practical annotations.
What's included
13 videos1 reading
13 videos•Total 151 minutes
- Course Overview•3 minutes
- Software Installation•4 minutes
- Generating Spring Boot Starter Project•3 minutes
- Walkthrough of Spring Boot Starter Project Files and Folders•14 minutes
- Introduction to Spring Framework and Spring Boot•10 minutes
- RESTful Webservices Http Methods Status Code Spring Boot Annotation•15 minutes
- MVC Design Pattern Part-1•15 minutes
- MVC Design Pattern Part-2•6 minutes
- Understanding and Creating DTO•8 minutes
- Understanding RESTful Webservice with Practical Example•13 minutes
- Understanding RequestParam Annotation with Practical Code Example•23 minutes
- Understanding PathVariable Annotation with Practical Code Example•14 minutes
- Understanding Post Put Delete Annotation and ResponseEntity with Practical Code•24 minutes
1 reading•Total 10 minutes
- Full Course Resources•10 minutes
In this module, we will focus on building a robust application architecture. You will learn about the layered architecture, the need for database configurations, and Hibernate ORM. We'll guide you through creating entity classes, implementing JPA annotations, and saving data into a database via repository patterns.
What's included
10 videos1 assignment
10 videos•Total 133 minutes
- Save New Property Post Endpoint•8 minutes
- Creating Service layer Dependency Injection Autowired Singleton Prototype•15 minutes
- Understanding Layered Architecture and Need for Different Database in DTAP•6 minutes
- Overview of Hibernate ORM Framework and JPA Specification•40 minutes
- Understanding how ORM Framework Like Hibernate Work and Different Hibernate•14 minutes
- Working on Entity class and Understanding Different JPA Annotation•9 minutes
- Saving Property in DB with PropertyRepository•22 minutes
- MVC Pattern•3 minutes
- Added PropertyConverter for DTO to Entity•6 minutes
- Sending Back the New Entity Along with Status Using ResponseEntity•11 minutes
1 assignment•Total 15 minutes
- Layered Architecture, ORM Framework and Creating New Property API - Assessment•15 minutes
In this module, we will explore CRUD operations in detail. You will develop REST endpoints to fetch, update, and delete property data. By the end of this section, you’ll understand how to handle both full and partial updates and manage resources dynamically.
What's included
4 videos1 assignment
4 videos•Total 44 minutes
- Get All Properties•11 minutes
- PutMapping and Full Update of a Property•14 minutes
- Partial Update of Price or Description Using Patch Operation•14 minutes
- Delete Property by Property id and Delete Mapping•6 minutes
1 assignment•Total 15 minutes
- GET, PUT, PATCH, DELETE Operation on Properties - Assessment•15 minutes
In this module, we will examine how Spring profiles streamline application configuration for various environments. You’ll configure and test Spring profiles, enabling seamless transitions between databases, and read custom properties inside Java classes for efficient development.
What's included
4 videos1 assignment
4 videos•Total 23 minutes
- Understanding about Spring Profiles•2 minutes
- Implementing Spring Profile with Different DB Config for DTAP•8 minutes
- Testing Profile Configuration for Different Environment Database•5 minutes
- Reading Custom Config Properties Inside Java Class•9 minutes
1 assignment•Total 15 minutes
- Spring Profiles and Configuration Properties - Assessment•15 minutes
In this module, we will establish version control practices with Git and GitHub. You will learn to commit and push changes, connect your IDE with GitHub, and perform essential Git operations to maintain a well-organized codebase.
What's included
4 videos1 assignment
4 videos•Total 30 minutes
- Setting up Git and GitHub for our Local Project•7 minutes
- Committing and Pushing our Local Code Changes to GitHub Server•10 minutes
- Connecting IntelliJ Editor with GitHub•4 minutes
- Important Git Operations that Developer Must Know•9 minutes
1 assignment•Total 15 minutes
- Git and GitHub - Assessment•15 minutes
In this module, we will develop user registration and login functionalities. You will design user entities, repositories, and services, followed by testing and validating the workflow. Additionally, you’ll perform Sonar analysis to maintain high coding standards.
What's included
12 videos1 assignment
12 videos•Total 49 minutes
- Understanding User Login and Registration•1 minute
- Creating UserEntity and UserRepository•3 minutes
- Creating UserService Interface and DTO•3 minutes
- Working on UserService Impl•2 minutes
- Working on User Converter Layer•4 minutes
- Completing the User Registration Flow•5 minutes
- Test User Registration Functionality•7 minutes
- JSONIgnore and JsonInclude Annotation•3 minutes
- Sonar Analysis and Git commit•8 minutes
- FindBy and JPQL Queries•8 minutes
- Creating Login REST API Endpoint and Integrate with Service Layer•4 minutes
- Testing User Login Functionality•2 minutes
1 assignment•Total 15 minutes
- User Login and Registration, and Sonar Analysis - Assessment•15 minutes
In this module, we will introduce AOP and error handling. You’ll create custom exception classes, test invalid scenarios like duplicate user registrations, and implement field-level validations to improve user input quality.
What's included
11 videos1 assignment
11 videos•Total 47 minutes
- What is Aspect Oriented Programming (AOP)•3 minutes
- Creating the Error Model•2 minutes
- Creating Custom Exception Class•3 minutes
- Creating Custom AOP Exception Handler•7 minutes
- Throw Custom Exception for Invalid Login•4 minutes
- Testing the Invalid Login Attempt•3 minutes
- Avoid Duplicate User Registration with Same Email•5 minutes
- Testing Duplicate Registration and Committing Code to GitHub•3 minutes
- Adding Field Level Validation Annotation•7 minutes
- Custom Handler for Field Level Error Handler•6 minutes
- Enabling Field level Validation with @Valid annotation•4 minutes
1 assignment•Total 15 minutes
- AOP and Error Handling - Assessment•15 minutes
In this module, we will focus on logging and collaboration. You will configure Logback for efficient logging and raise pull requests to ensure a seamless code review process, fostering teamwork and application reliability.
What's included
4 videos1 assignment
4 videos•Total 26 minutes
- Overview of Logging and Logging Levels•6 minutes
- Adding Logback xml Configuration and Logger Statements•11 minutes
- Testing Logging with Different Profiles and Committing Code to GitHub•7 minutes
- Raising Pull Request for Code Review•2 minutes
1 assignment•Total 15 minutes
- Logging with Logback and Pull Request Process - Assessment•15 minutes
In this module, we will streamline API documentation using Swagger. You’ll configure Swagger UI, enrich API definitions with annotations, and explore generated documentation to facilitate developer collaboration and consumer adoption.
What's included
6 videos1 assignment
6 videos•Total 23 minutes
- Understanding About Swagger API Documentation•2 minutes
- Configuring Swagger Documentation•7 minutes
- Exploring Swagger JSON from Consumers Point of View•4 minutes
- Exploring Swagger UI and Accessing Different API Endpoints•3 minutes
- Enriching Swagger Documentation with Extra Annotation•5 minutes
- Produces and Consumes Application JSON•3 minutes
1 assignment•Total 15 minutes
- Swagger Automatic API Documentation - Assessment•15 minutes
In this module, we will cover application monitoring with Spring Boot Actuator. You’ll enable and test monitoring endpoints, ensuring the application is running optimally and reliably across various environments.
What's included
2 videos1 assignment
2 videos•Total 11 minutes
- Monitoring with Spring Boot Actuator•7 minutes
- Enabling Web and Jmx Endpoints for Monitoring•4 minutes
1 assignment•Total 15 minutes
- Application Health Monitoring - Assessment•15 minutes
In this module, we will delve into entity relationships in JPA. You’ll work with various relationship types, update repository logic, and test database queries to ensure seamless data interactions within the application.
What's included
10 videos1 assignment
10 videos•Total 46 minutes
- Understanding Relationship in SpringData JPA•2 minutes
- Adding Many To One Relationship in Property•5 minutes
- Get the User from DB and Set to the Property Entity•6 minutes
- Save Multiple Property Belonging to One User•3 minutes
- Updating Controller Service Repository•6 minutes
- Testing the Get All Properties for One User•6 minutes
- FetchType Eager Versus FetchType Lazy•5 minutes
- One to One Relationship•4 minutes
- Creating Repository and Updating Logic in DTO and Service for Saving Address•5 minutes
- Testing One to One Relationship•3 minutes
1 assignment•Total 15 minutes
- Different Types of Entity Relationship - Assessment•15 minutes
In this module, we will guide you through upgrading your application to Spring Boot 3. You’ll update dependencies, fix compatibility issues, and enhance application performance and maintainability using the latest tools and features.
What's included
7 videos1 assignment
7 videos•Total 38 minutes
- Why should we upgrade to SpringBoot 3•2 minutes
- Upgrading Java 8 to Java 17•4 minutes
- Upgrade pom to Springboot 3 and replace the javax imports•7 minutes
- Upgrade Swagger 2 to Springdoc-openapi•9 minutes
- Fixing logback and SLF4J with Springboot 3•6 minutes
- Springboot 3 and MySQL database config fixes•7 minutes
- Upgrade Actuator•3 minutes
1 assignment•Total 15 minutes
- Upgrading SpringBoot Version 2 to Version 3 - Assessment•15 minutes
In this module, we will explore real-world applications of JPA queries. You’ll create and optimize complex queries, implement pagination, and understand advanced CRUD operations to manage your data efficiently.
What's included
6 videos3 assignments
6 videos•Total 24 minutes
- findBy Query•4 minutes
- findBy Contains Order By Query•4 minutes
- findAllBy Query by via more than one entity•3 minutes
- findBy Query with multiple attributes and operator•3 minutes
- Pagination with SpringData JPA - CRUD vs JPA Repository•6 minutes
- countBy Query - existsBy Query - deleteBy Query•3 minutes
3 assignments•Total 90 minutes
- Full Course Practice Assessment•15 minutes
- Real World SpringData JPA Queries - Assessment•15 minutes
- Full Course Assessment•60 minutes
Instructor
Explore more from Software Development
Course
Status: Free TrialCategory: Credit offeredCourse
Category: Credit offered- B
Board Infinity
Course
Status: Free TrialCategory: Credit offered Course
Status: Free TrialCategory: Credit offered
Why people choose Coursera for their career
Frequently asked questions
Yes, you can preview the first video and view the syllabus before you enroll. You must purchase the course to access content not included in the preview.
If you decide to enroll in the course before the session start date, you will have access to all of the lecture videos and readings for the course. You’ll be able to submit assignments once the session starts.
Once you enroll and your session begins, you will have access to all videos and other resources, including reading items and the course discussion forum. You’ll be able to view and submit practice assessments, and complete required graded assignments to earn a grade and a Course Certificate.
More questions
Financial aid available,
