Foundations of Microservices and REST APIs with Spring Boot
Keep adding new skills with 10,000+ programs for $239 (usually $399). Save now.
Foundations of Microservices and REST APIs with Spring Boot
This course is part of Master Microservices with Spring Boot and Spring Cloud Specialization
Included with
Ask Coursera
Recommended experience
Recommended experience
What you'll learn
Build RESTful APIs using Spring Boot and explore core HTTP methods in API development.
Design, document, and version scalable REST APIs with Swagger and HATEOAS integration.
Connect APIs to databases using JPA, Hibernate, and MySQL for data persistence.
Secure microservices using Spring Security and enhance performance with Spring Actuator.
Skills you'll gain
Details to know
See how employees at top companies are mastering in-demand skills
Build your subject-matter expertise
- Learn new concepts from industry experts
- Gain a foundational understanding of a subject or tool
- Develop job-relevant skills with hands-on projects
- Earn a shareable career certificate
There are 4 modules in this course
This course 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. Build the skills to design, develop, and secure scalable microservices using Spring Boot and Spring Cloud. This course equips learners with a practical understanding of RESTful web services, API architecture, and the essential tools required to create robust backend solutions in Java. Whether you're new to microservices or seeking a structured foundation, this course provides the hands-on knowledge to get you started confidently. You’ll begin with an introduction to microservices architecture and how Spring Boot simplifies development. Then, you'll explore foundational concepts like installing the Java development environment, understanding SOAP vs REST, and learning how to build and expose RESTful APIs. From there, you’ll incrementally develop a complete REST API with advanced features including versioning, filtering, error handling, Swagger documentation, and authentication using Spring Security. The final sections dive deeper into microservices concepts, connecting your services with relational databases using JPA, Hibernate, and MySQL, and implementing scalable microservice patterns. You’ll also explore tools like Docker, HAL Explorer, and Actuator for deployment, monitoring, and exploration. This course is designed for developers with basic Java knowledge who want to learn backend API development and microservices design. It is ideal for aspiring full-stack developers, backend engineers, and system architects. A working knowledge of object-oriented programming is recommended. This is an intermediate-level course. By the end of the course, you will be able to build REST APIs with Spring Boot, integrate them with databases, implement microservice architecture with Spring Cloud, and deploy scalable, secure applications with confidence.
In this module, we will explore the essential concepts of microservices architecture and how to get started with building microservices using Spring Boot and Spring Cloud. You will also learn how to install and configure your development environment to kickstart your journey into microservices development. By the end of this module, you'll have a solid foundation for creating scalable, production-ready applications.
What's included
3 videos2 readings
3 videos•Total 8 minutes
- Introduction to specialization•4 minutes
- Master Microservices with Spring Boot and Spring Cloud - Course Overview•2 minutes
- Master Microservices - Installing Java and Eclipse•2 minutes
2 readings•Total 20 minutes
- Introduction to the course 'Foundations of Microservices and REST APIs with Spring Boot'•10 minutes
- Full Course Resources•10 minutes
In this module, we will introduce you to the core concepts of web services, focusing on both SOAP and RESTful services. You’ll gain a deeper understanding of web service terminology, and learn how to create platform-independent solutions that can communicate seamlessly across different systems. By the end of this module, you’ll be well-equipped to choose the right type of web service for your projects.
What's included
5 videos1 assignment
5 videos•Total 15 minutes
- Step 01 - What is a Web Service? TRY 1•4 minutes
- Step 02 - What is a Web Service?•3 minutes
- Step 03 - How to make web services platform independent?•2 minutes
- Step 04 - Web Services - Key Terminology•2 minutes
- Step 05 - SOAP vs RESTful Web Services•4 minutes
1 assignment•Total 15 minutes
- Introduction To Web Services - V3 - Assessment•15 minutes
In this module, we will guide you through building and enhancing REST APIs using Spring Boot. You’ll start with a simple “Hello World” REST API and progressively add functionality, such as data validation, exception handling, and versioning. By the end of this module, you will be able to build robust and flexible RESTful APIs that are ready for real-world applications.
What's included
40 videos1 assignment
40 videos•Total 286 minutes
- Restful Web Services - Section Introduction•1 minute
- Step 00 - Creating a REST API with Spring Boot - An Overview•4 minutes
- Step 01 - Initializing a REST API Project with Spring Boot•7 minutes
- Step 02 - Creating a Hello World REST API with Spring Boot•6 minutes
- Step 03 - Enhancing the Hello World REST API to return a Bean•5 minutes
- Step 04 - What's happening in the background? Spring Boot Starters & Autoconfign•9 minutes
- Step 05 - Enhancing the Hello World REST API with a Path Variable•4 minutes
- Step 06 - Designing the REST API for Social Media Application•7 minutes
- Step 07 - Creating User Bean and UserDaoService•7 minutes
- Step 08 - Implementing GET Methods for User Resource•8 minutes
- Step 09 - Implementing POST Method to create User Resource•9 minutes
- Step 10 - Enhancing POST Method to return correct HTTP Status Code and Location•11 minutes
- Step 11 - Implementing Exception Handling - 404 Resource Not Found•8 minutes
- Step 12 - Implementing Generic Exception Handling for all Resources•11 minutes
- Step 13 - Implementing DELETE Method to delete a User Resource•3 minutes
- Step 14 - Implementing Validations for REST API•12 minutes
- Step 15 - Overview of Advanced REST API Features•1 minute
- Step 16 - Understanding Open API Specification and Swagger•5 minutes
- Step 17 - Configuring Auto Generation of Swagger Documentation•10 minutes
- Step 18 - Exploring Content Negotiation - Implementing Support for XML•6 minutes
- Step 19 - Exploring Internationalization for REST API•10 minutes
- Step 20 - Versioning REST API - URI Versioning•9 minutes
- Step 21 - Versioning REST API - Request Param, Header and Content Negotiation•11 minutes
- Step 22 - Implementing HATEOAS for REST API•11 minutes
- Step 23 - Implementing Static Filtering for REST API•10 minutes
- Step 24 - Implementing Dynamic Filtering for REST API•9 minutes
- Step 25 - Monitoring APIs with Spring Boot Actuator•7 minutes
- Step 26 - Exploring APIs with Spring Boot HAL Explorer•5 minutes
- Step 27 - Connecting REST API to H2 using JPA and Hibernate - An Overview•1 minute
- Step 28 - Creating User Entity and some test data•5 minutes
- Step 29 - Enhancing REST API to connect to H2 using JPA and Hibernate•11 minutes
- Step 30 - Creating Post Entity with Many to One Relationship with User Entity•10 minutes
- Step 31 - Implementing a GET API to retrieve all Posts of a User•3 minutes
- Step 32 - Implementing a POST API to create a Post for a User•6 minutes
- Step 33 - Exploring JPA and Hibernate Queries for REST API•7 minutes
- Step 34 - Connecting REST API to MySQL Database - An Overview•1 minute
- Step 34z - OPTIONAL - Installing Docker•4 minutes
- Step 35 - OPTIONAL - Connecting REST API to MySQL Database - Implementation•15 minutes
- Step 36 - Implementing Basic Authentication with Spring Security•5 minutes
- Step 37 - Enhancing Spring Security Configuration for Basic Authentication•9 minutes
1 assignment•Total 15 minutes
- Restful Web Services with Spring Boot - V3 - Assessment•15 minutes
In this module, we will explore the differences between monolithic and microservices architectures. You will learn how microservices address the challenges of scalability, maintenance, and deployment faced by monolithic applications. By the end of this module, you will understand how breaking an application into smaller, independent services can lead to more efficient development and deployment.
What's included
6 videos1 reading3 assignments
6 videos•Total 20 minutes
- Step 00 - Microservices Section Introduction•1 minute
- Step 01 - What is a Monolith Application?•4 minutes
- Step 02 - Introduction to Microservices•4 minutes
- Step 03 - Exploring Microservices Architecture Example•2 minutes
- Step 04 - Advantages of Microservices•2 minutes
- Step 05 - Key Microservice Solutions - Spring Boot and Spring Cloud•7 minutes
1 reading•Total 10 minutes
- Conclusion to the Course 'Foundations of Microservices and REST APIs with Spring Boot'•10 minutes
3 assignments•Total 90 minutes
- Introduction To Microservices - V3 - Assessment•15 minutes
- Full Course Assessment•60 minutes
- Full Course Practice Assessment•15 minutes
Earn a career certificate
Add this credential to your LinkedIn profile, resume, or CV. Share it on social media and in your performance review.
Instructor
Explore more from Software Development
- Status: Free Trial
Course
- Status: Free TrialB
Board Infinity
Course
Why people choose Coursera for their career
Frequently asked questions
This course provides a comprehensive introduction to building and understanding microservices and REST APIs using Spring Boot and Spring Cloud. It begins with the fundamentals of web services and progresses to hands-on implementation of RESTful APIs, database integration, authentication, and microservices architecture, equipping learners with the skills to design scalable, maintainable, and production-ready applications.
Microservices are a software architectural style that structures an application as a collection of loosely coupled, independently deployable services. REST APIs (Representational State Transfer Application Programming Interfaces) enable communication between these services over the web. Together, they form the backbone of modern, cloud-native applications, providing scalability, flexibility, and resilience in distributed systems—skills highly sought after in today’s software development landscape.
After completing this course, you will be able to design and build RESTful APIs using Spring Boot, implement CRUD operations, handle exceptions, apply versioning, and add authentication with Spring Security. You’ll also gain practical experience connecting APIs to databases using JPA, Hibernate, and MySQL, documenting APIs with Swagger, and developing microservices that can be deployed and scaled using Spring Cloud.
More questions
Financial aid available,
