VOOZH about

URL: https://www.coursera.org/learn/packt-master-java-web-services-and-rest-api-with-spring-boot-mxnmc

⇱ Master Java Web Services and REST API with Spring Boot | Coursera


Master Java Web Services and REST API with Spring Boot

Keep adding new skills with 10,000+ programs for $239 (usually $399). Save now.

Master Java Web Services and REST API with Spring Boot

Included with

Ask Coursera

Gain insight into a topic and learn the fundamentals.
Intermediate level

Recommended experience

2 weeks to complete
at 10 hours a week
Flexible schedule
Learn at your own pace

Gain insight into a topic and learn the fundamentals.
Intermediate level

Recommended experience

2 weeks to complete
at 10 hours a week
Flexible schedule
Learn at your own pace

What you'll learn

  • Design and implement RESTful APIs with Spring Boot using advanced features like HATEOAS and versioning

  • Develop secure SOAP web services with Spring Web Services and WS Security integration

  • Connect APIs to databases using Spring Data JPA, Hibernate, and implement CRUD operations

  • Automate builds and dependency management using Maven and Gradle in enterprise applications

Details to know

Shareable certificate

Add to your LinkedIn profile

Assessments

13 assignments

Taught in English

There are 14 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. Unlock the full power of Java web development by mastering both SOAP and RESTful web services with Spring and Spring Boot. This comprehensive course walks you through essential technologies and frameworks for modern backend development, equipping you with skills to design, develop, and secure enterprise-grade APIs. You’ll begin with the fundamentals of web services, then dive into the Spring Framework in 16 guided steps. After grasping the power of loose coupling and dependency injection, you'll build real-world applications using Spring Boot. From setting up projects and creating endpoints to advanced configurations, each step is hands-on and practical. Next, explore build tools like Maven and Gradle, before progressing to implementing SOAP and REST APIs using contract-first design, content negotiation, versioning, and security with Spring Security and WS Security. You'll also connect RESTful services to JPA for database integration, and review REST best practices. Designed for intermediate Java developers, this course is ideal for those seeking hands-on experience with Spring-based backend services. You should be comfortable with Java basics. While not a beginner course, clear guidance makes it accessible for fast learners and returners to Java development.

In this module, we will introduce the course and provide an overview of its structure. You will learn what to expect from the course, how to navigate through the content, and the tools and concepts you'll need to succeed.

What's included

1 video1 reading

1 videoTotal 2 minutes
  • Introduction to Course and Course Guide2 minutes
1 readingTotal 10 minutes
  • Full Course Resources10 minutes

In this module, we will dive into the basics of web services, exploring what they are and why they are critical in modern application development. You will learn about SOAP and RESTful web services and understand their differences through clear examples and terminology breakdowns.

What's included

7 videos1 assignment

7 videosTotal 32 minutes
  • Introduction to Web Services - An Overview1 minute
  • What Is a Web Service?6 minutes
  • Important Questions related to Web Services7 minutes
  • Web Services - Key Terminology4 minutes
  • Introduction to SOAP Web Services5 minutes
  • Introduction to RESTful Web Services8 minutes
  • SOAP Versus RESTful Web Services2 minutes
1 assignmentTotal 15 minutes
  • Introduction to Web Services - Assessment15 minutes

In this module, we will explore the Spring framework step-by-step, focusing on its core functionalities, dependency injection, and module ecosystem. By the end, you will have a solid foundation in Spring, preparing you for more advanced concepts in subsequent modules.

What's included

16 videos1 assignment

16 videosTotal 81 minutes
  • Step 01 - Getting Started with Spring Framework - Goals3 minutes
  • Step 02 - Setting Up New Spring Project with Spring Initializr4 minutes
  • Step 03 - Iteration 1 - Building Tightly Coupled GameRunner and MarioGame8 minutes
  • Step 04 - Understanding Tight Coupling3 minutes
  • Step 05 - Iteration 2 - Loose Coupling Level 1 - Interfaces4 minutes
  • Step 06 - Exploring Loose Coupling with Interfaces - Pacman Game2 minutes
  • Step 07 - Iteration 3 - Loose Coupling Level 2 - Spring Framework9 minutes
  • Step 08 - Q1 - Spring Framework - Understanding What's Happening in the Background10 minutes
  • Step 09 - Q2 - Spring Framework - Understanding Important Terminology8 minutes
  • Step 10 - Q3 - Spring Framework - Does Spring Framework Add Value11 minutes
  • Step 11 - Q4 - Spring Framework - Running Super Contra2 minutes
  • Step 12 - Q5 - Spring Framework - Maven6 minutes
  • Step 13 - Exploring Spring Framework Dependency Injection Types5 minutes
  • Step 14 - Exploring Spring Modules2 minutes
  • Step 15 - Exploring Spring Projects3 minutes
  • Step 16 - Getting Started with Spring Framework - Review1 minute
1 assignmentTotal 15 minutes
  • Introduction to Spring Framework in 16 Steps - Assessment15 minutes

In this module, we will introduce Spring Boot, a streamlined approach to building Spring applications. You will learn about its unique features, such as auto-configuration and embedded servers, and start building your first APIs with Spring Boot.

What's included

14 videos1 assignment

14 videosTotal 74 minutes
  • Step 01 - Getting Started with Spring Boot - Goals2 minutes
  • Step 02 - Understanding the World Before Spring Boot - 10,000 Feet Overview3 minutes
  • Step 03 - Setting Up New Spring Boot Project with Spring Initializr7 minutes
  • Step 04 - Build a Hello World API with Spring Boot9 minutes
  • Step 05 - Understanding the Goal of Spring Boot3 minutes
  • Step 06 - Understanding Spring Boot Magic - Spring Boot Starter Projects5 minutes
  • Step 07 - Understanding Spring Boot Magic - Autoconfiguration8 minutes
  • Step 08 - Build Faster with Spring Boot DevTools4 minutes
  • Step 09 - Get Production Ready with Spring Boot - 1 - Profiles7 minutes
  • Step 10 - Get Production Ready with Spring Boot - 2 - ConfigurationProperties8 minutes
  • Step 11 - Get Production Ready with Spring Boot - 3 - Embedded Servers6 minutes
  • Step 12 - Get Production-Ready with Spring Boot - 4 - Actuator8 minutes
  • Step 13 - Understanding Spring Boot Versus Spring Versus Spring MVC4 minutes
  • Step 14 - Getting Started with Spring Boot - Review1 minute
1 assignmentTotal 15 minutes
  • Introduction to Spring Boot in 14 Steps - Assessment15 minutes

In this module, we will dive into Maven, a powerful build automation tool used with Java projects. You’ll learn how to set up a Spring Boot application using Maven, explore pom.xml, and understand how Maven builds and manages dependencies. This section also clarifies how versioning works for Spring projects and how to utilize Maven commands effectively.

What's included

9 videos1 assignment

9 videosTotal 49 minutes
  • Step 01 - Introduction to Maven2 minutes
  • Step 02 - Creating a Spring Boot Project with Maven4 minutes
  • Step 03 - Exploring Maven pom.xml for Spring Boot Project9 minutes
  • Step 04 - Exploring Maven Parent Pom for Spring Boot Project7 minutes
  • Step 05 - Exploring Maven Further6 minutes
  • Step 06 - Exploring Maven Build Lifecycle with a Spring Boot Project4 minutes
  • Step 07 - How does Maven Work?8 minutes
  • Step 08 - Playing with Maven Commands4 minutes
  • Step 09 - How are Spring Projects Versioned?6 minutes
1 assignmentTotal 15 minutes
  • Introduction to Maven - Assessment15 minutes

In this module, we will introduce Gradle as an alternative to Maven for building Spring Boot projects. You will learn to create a project using Gradle, explore its build files, and understand how plugins enhance Java and Spring Boot integration. We'll wrap up by comparing Maven and Gradle to guide you on choosing the right tool.

What's included

5 videos1 assignment

5 videosTotal 20 minutes
  • Step 01 - Getting Started with Gradle2 minutes
  • Step 02 - Creating a Spring Boot Project with Gradle4 minutes
  • Step 03 - Exploring Gradle Build and Settings Files4 minutes
  • Step 04 - Exploring Gradle Plugins for Java and Spring Boot5 minutes
  • Step 05 - Maven or Gradle - Which one to use for Spring Boot Projects?5 minutes
1 assignmentTotal 15 minutes
  • Introduction to Gradle - Assessment15 minutes

In this module, we will delve into SOAP web services, focusing on how to create, configure, and secure them using Spring and Spring Boot. You’ll gain practical experience with WSDL, JAXB, and endpoint configurations, making your services production-ready.

What's included

19 videos1 assignment

19 videosTotal 121 minutes
  • SOAP Web Services - An Overview1 minute
  • Step 01 - Initialize a Spring Web Services Application with Spring Boot4 minutes
  • Step 02 - Overview of Creating SOAP Web Service Using Contract First Approach5 minutes
  • Step 03 - Define Request and Response XML Structure5 minutes
  • Step 04 - Define XML Schema Definition (XSD) for Request - GetCourseDetailsReque8 minutes
  • Step 05 - Define XML Schema Definition (XSD) for Response - GetCourseDetailsResp5 minutes
  • Step 06 - More about XML Schema Definition and Implementing XSD Best Practices4 minutes
  • Step 07 - Introduction to Java API for XML Binding (JAXB) and Configuring JAXB 29 minutes
  • Step 08 - Configuring an Endpoint for GetCourseDetailsRequest7 minutes
  • Step 09 - Spring Web Services Configuration - Message Dispatcher Servlet6 minutes
  • Step 10 - Spring Web Services Configuration - Generating WSDL9 minutes
  • Step 11 - Using Wizdler to Execute SOAP Requests5 minutes
  • Step 12 - Implementing a Service - Course Details Service - Backend with Memo9 minutes
  • Step 13 - Implementing SOAP Web Service for GetAllCourseDetailsRequest8 minutes
  • Step 14 - Quick Introduction to Different Parts of a WSDL6 minutes
  • Step 15 - Implementing SOAP Web Service for DeleteCourseDetailsRequest3 minutes
  • Step 16 - Improving the DeleteCourseDetailsRequest - Using an Enum for Status7 minutes
  • Step 17 - Exception Handling and SOAP Fault Responses7 minutes
  • Step 18 - Implementing Security for SOAP Web Services with WS Security13 minutes
1 assignmentTotal 15 minutes
  • SOAP Web Services with Spring and Spring Boot - Assessment15 minutes

In this module, we will master the creation of RESTful web services. From basic CRUD operations to advanced features like HATEOAS and internationalization, you will build APIs that are robust, scalable, and well-documented.

What's included

27 videos1 assignment

27 videosTotal 207 minutes
  • Step 00 - Creating a REST API with Spring Boot - An Overview4 minutes
  • Step 01 - Initializing a REST API Project with Spring Boot7 minutes
  • Step 02 - Creating a Hello World REST API with Spring Boot6 minutes
  • Step 03 - Enhancing the Hello World REST API to Return a Bean5 minutes
  • Step 04 - What's Happening in the Background? Spring Boot Starters and Autoconfign9 minutes
  • Step 05 - Enhancing the Hello World REST API with a Path Variable4 minutes
  • Step 06 - Designing the REST API for Social Media Application8 minutes
  • Step 07 - Creating User Bean and UserDaoService7 minutes
  • Step 08 - Implementing GET Methods for User Resource8 minutes
  • Step 09 - Implementing POST Method to Create User Resource9 minutes
  • Step 10 - Enhancing POST Method to return correct HTTP Status Code and Location11 minutes
  • Step 11 - Implementing Exception Handling - 404 Resource Not Found8 minutes
  • Step 12 - Implementing Generic Exception Handling for All Resources11 minutes
  • Step 13 - Implementing DELETE Method to Delete a User Resource3 minutes
  • Step 14 - Implementing Validations for REST API12 minutes
  • Step 15 - Overview of Advanced REST API Features1 minute
  • Step 16 - Understanding Open API Specification and Swagger5 minutes
  • Step 17 - Configuring Auto-Generation of Swagger Documentation10 minutes
  • Step 18 - Exploring Content Negotiation - Implementing Support for XML6 minutes
  • Step 19 - Exploring Internationalization for REST API10 minutes
  • Step 20 - Versioning REST API - URI Versioning9 minutes
  • Step 21 - Versioning REST API - Request Param, Header, and Content Negotiation11 minutes
  • Step 22 - Implementing HATEOAS for REST API11 minutes
  • Step 23 - Implementing Static Filtering for REST API10 minutes
  • Step 24 - Implementing Dynamic Filtering for REST API9 minutes
  • Step 25 - Monitoring APIs with Spring Boot Actuator7 minutes
  • Step 26 - Exploring APIs with Spring Boot HAL Explorer5 minutes
1 assignmentTotal 15 minutes
  • RESTful Web Services with Spring and Spring Boot - Assessment15 minutes

In this module, we will explore Java Persistence API (JPA) and Hibernate, focusing on their integration with Spring Boot. You’ll learn to interact with databases, manage entities, and harness the full power of JPA for data persistence.

What's included

12 videos1 assignment

12 videosTotal 74 minutes
  • Step 01 - Getting Started with JPA and Hibernate - Goals1 minute
  • Step 02 - Setting Up New Spring Boot Project for JPA and Hibernate7 minutes
  • Step 03 - Launching Up H2 Console and Creating Course Table in H27 minutes
  • Step 04 - Getting Started with Spring JDBC4 minutes
  • Step 05 - Inserting Hardcoded Data Using Spring JDBC8 minutes
  • Step 06 - Inserting and Deleting Data Using Spring JDBC9 minutes
  • Step 07 - Querying Data Using Spring JDBC6 minutes
  • Step 08 - Getting Started with JPA and EntityManager12 minutes
  • Step 09 - Exploring the Magic of JPA3 minutes
  • Step 10 - Getting Started with Spring Data JPA6 minutes
  • Step 11 - Exploring Features of Spring Data JPA5 minutes
  • Step 12 - Understanding Difference Between Hibernate and JPA5 minutes
1 assignmentTotal 15 minutes
  • Introduction to JPA in 12 Steps - Assessment15 minutes

In this module, we will connect RESTful APIs to JPA for dynamic and persistent data handling. You’ll learn how to manage entity relationships and implement security features, ensuring a seamless and secure user experience.

What's included

12 videos1 assignment

12 videosTotal 79 minutes
  • Step 27 - Connecting REST API to H2 Using JPA and Hibernate - An Overview1 minute
  • Step 28 - Creating User Entity and Some Test Data5 minutes
  • Step 29 - Enhancing REST API to Connect to H2 Using JPA and Hibernate11 minutes
  • Step 30 - Creating Post Entity with Many-to-One Relationship with User Entity10 minutes
  • Step 31 - Implementing a GET API to Retrieve All Posts of a User3 minutes
  • Step 32 - Implementing a POST API to Create a Post for a User6 minutes
  • Step 33 - Exploring JPA and Hibernate Queries for REST API7 minutes
  • Step 34 - Connecting REST API to MySQL Database - An Overview1 minute
  • Step 34z - Optional - Installing Docker4 minutes
  • Step 35 - Optional - Connecting REST API to MySQL Database - Implementation15 minutes
  • Step 36 - Implementing Basic Authentication with Spring Security5 minutes
  • Step 37 - Enhancing Spring Security Configuration for Basic Authentication9 minutes
1 assignmentTotal 15 minutes
  • Connecting RESTful Web Service to JPA - Assessment15 minutes

In this module, we will cover industry best practices for RESTful web services. Using the Richardson Maturity Model as a guide, you will learn techniques to enhance API design and ensure long-term reliability.

What's included

2 videos1 assignment

2 videosTotal 7 minutes
  • Richardson Maturity Model3 minutes
  • RESTful Web Services - Best Practices3 minutes
1 assignmentTotal 15 minutes
  • RESTful Web Services - Best Practices - Assessment15 minutes

In this module, we will conclude the course by reflecting on your journey and achievements. You’ll receive guidance on how to continue improving and apply your new skills in professional scenarios.

What's included

1 video

1 videoTotal 1 minute
  • Congratulations1 minute

In this module, we will review new Java features in a Q&A format to reinforce learning. We'll explore how Java has progressed in recent releases, why these changes matter, and highlight the most important enhancements across versions. This appendix serves as a quick refresher for modern Java development.

What's included

4 videos1 assignment

4 videosTotal 31 minutes
  • Quick Review - Java New Features1 minute
  • How is Java Marching Forward6 minutes
  • Primary Goals Behind Recent Java Release6 minutes
  • Important Java Versions and Most Important Features18 minutes
1 assignmentTotal 15 minutes
  • APPENDIX - Java New Features - A Quick Review using Q&A Format - Assessment15 minutes

In this module, we will introduce functional programming, focusing on its application in Java. Through concise lessons and hands-on exercises, you will enhance your programming skills and discover new ways to write efficient, elegant code.

What's included

9 videos2 assignments

9 videosTotal 49 minutes
  • Step 00 - Introduction to Functional Programming - Overview1 minute
  • Step 01 - Getting Started with Functional Programming with Java6 minutes
  • Step 02 - Writing Your First Java Functional Program6 minutes
  • Step 03 - Improving Java Functional Program with Filter8 minutes
  • Step 04 - Using Lambda Expression to Enhance Your Functional Program5 minutes
  • Step 05 - Do Functional Programming Exercises with Streams, Filters, and Lambdas6 minutes
  • Step 06 - Using Map in Functional Programs - with Exercises6 minutes
  • Step 07 - Understanding Optional Class in Java7 minutes
  • Step 08 - Quick Review of Functional Programming Basics3 minutes
2 assignmentsTotal 75 minutes
  • Appendix - Introduction to Functional Programming in 30 Minutes - Assessment15 minutes
  • Full Course Assessment60 minutes

Instructor

Offered by

Explore more from Software Development

Why people choose Coursera for their career

👁 Image

Felipe M.

Learner since 2018
"To be able to take courses at my own pace and rhythm has been an amazing experience. I can learn whenever it fits my schedule and mood."
👁 Image

Jennifer J.

Learner since 2020
"I directly applied the concepts and skills I learned from my courses to an exciting new project at work."
👁 Image

Larry W.

Learner since 2021
"When I need courses on topics that my university doesn't offer, Coursera is one of the best places to go."
👁 Image

Chaitanya A.

"Learning isn't just about being better at your job: it's so much more than that. Coursera allows me to learn without limits."

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.

If you complete the course successfully, your electronic Course Certificate will be added to your Accomplishments page - from there, you can print your Course Certificate or add it to your LinkedIn profile.

This course is currently available only to learners who have paid or received financial aid, when available.

Yes. In select learning programs, you can apply for financial aid or a scholarship if you can’t afford the enrollment fee. If fin aid or scholarship is available for your learning program selection, you’ll find a link to apply on the description page.

Financial aid available,