Udemy

Platform

English

Language

Web Development

Category

Master Java Web Services and RESTful API with Spring Boot

Build Java Web Services & REST API - RESTful & SOAP - with Spring & Spring Boot. Learn REST API & SOAP Web Services Now!

4.47 (8012 reviews)

Students

9.5 hours

Content

Nov 2020

Last Update
Regular Price

SKILLSHARE
SkillShare
Unlimited access to all SkillShare courses
EXCLUSIVE 30-DAY FREE TRIAL

What you will learn

You will Learn to Design and Develop SOAP and RESTful web services with Spring Boot

You will Understand the BEST PRACTICES in designing RESTful web services

You will Learn the MAGIC of SPRING BOOT - Auto Configuration, Spring Initializr and Starter Projects

You will Learn to Connect Web Services to a Database using JPA and HIBERNATE with Spring Boot

You will Learn to Implement Exception Handling, Validation, HATEOAS and Filtering for RESTful Web Services.

You will Learn to use a wide variety of Spring Boot STARTER PROJECTS - Spring Boot Web, Spring Boot Web Services, Spring Boot Data JPA

You will learn how to version, monitor (Spring Boot Actuator) and document (Swagger) your RESTful Web Services with Spring Boot

You will understand about WSDL, SOAP Header, SOAP Body, SOAP Fault, XSD, JAXB and EndPoint


Description

REST API?   Yes.    Spring Boot ?  Yes     SOAP ?   Yes     Best Practices ?  Yes    Hands-on ?   Of course.

Do you want to Master Building Great Java Web Services - both RESTful and SOAP - with Spring Boot?


WHAT OUR LEARNERS ARE SAYING:

5 STARS - This is the best course if you like to learn how REST API exactly works. The instructor is awesome. I had a great time watching his videos and doing coding for this course. It really helped me to do a coding assessment for the company.

5 STARS - This course gave me an excellent head start with creating Restful web services!

5 STARS - It is such an awesome course, I have now got an idea to create production level restful services

5 STARS - As an experienced JEE developer unfamiliar with Spring Boot and developing web services within it, this was simply an awesome course for becoming knowledgeable and comfortable in applying it in a real-world context.

5 STARS - This is my first spring boot course. I've thoroughly enjoyed it. Thank you very much Ranga for delivering such a high quality course. I've learned a lot spring boot from you. If someone want to learn spring boot, this is one of the best courses to pick up.


******* Course Overview *******

Developing SOAP and RESTful web services is fun. The combination of Spring Boot, Spring Web MVC, Spring Web Services and JPA makes it even more fun.

Architectures are moving towards microservices. RESTful web services are the first step to developing great microservices. Spring Boot, in combination with Spring Web MVC (also called Spring REST) makes it easy to develop RESTful web services.

There are two parts to this course - RESTful web services and SOAP Web Services.

In the first part of the course, you will learn the basics of RESTful web services developing resources for a social media application. You will learn to implement these resources with multiple features - versioning, exception handling, documentation (Swagger), basic authentication (Spring Security), filtering and HATEOAS. You will learn the best practices in designing RESTful web services.

You will be using Spring (Dependency Management), Spring MVC (or Spring REST), Spring Boot, Spring Security (Authentication and Authorization), Spring Boot Actuator (Monitoring), Swagger (Documentation), Maven (dependencies management), Eclipse (IDE), Postman (REST Services Client) and Tomcat Embedded Web Server. We will help you set up each one of these.

While the use of SOAP Web Services is on the way down, there are still considerable number of web services using this approach.

In the second part of the course, you will learn the basics of implementing SOAP Web Services developing a few web services for a course management application. You will learn to use a Contract first approach - defining XSD (XML Schema Definition) for your requests and responses. You will learn about WSDL (SOAP Header, SOAP Body and SOAP Fault), XSD (XML Schema Definition) and JAXB (Java API for XML Binding). You will implementing three SOAP web services with exception handling and basic security (with WS Security).

In this part of the course, you will be using Spring (Dependency Management), Spring Web Services , Spring Boot, Spring Security (Authentication and Authorization), Maven (dependencies management), Eclipse (IDE), Wizdler (SOAP Services Chrome Plugin) and Tomcat Embedded Web Server. We will help you set up each one of these.

You will learn

  • What is a Web Service?

  • What is a RESTful Web Service?

  • How to implement RESTful Web Services with Spring and Spring Boot?

  • What are the best practices in designing RESTful Web Services?

  • How to design Resources and GET, POST and DELETE operations?

  • How to implement Validation for RESTful Web Services?

  • How to implement Exception Handling for RESTful Web Services?

  • What is HATEOAS? How to implement HATEOAS for a Resource?

  • What are the different approach in versioning RESTful Services?

  • How to use Postman to execute RESTful Service Requests?

  • How to implement basic authentication with Spring Security?

  • How to implement filtering for RESTful Services?

  • How to monitor RESTful Services with Spring Boot Actuator?

  • How to document RESTful Web Services with Swagger?

  • How to connect RESTful Services to a backend with JPA?

  • What is a SOAP Web Service?

  • What is WSDL (Web Service Definition Language)?

  • What is SOAP Header, SOAP Body and SOAP Fault?

  • What is an XSD (XML Schema Definition)?

  • How to write an XSD for your requests and responses?

  • What is JAXB (Java API for XML Binding)?

  • What is an Endpoint?

  • What is a Contract First approach?

  • What are the different steps in building SOAP Web Services with Spring Web Services & Spring Boot?

  • How to build different SOAP Web services for GetCourseDetailsRequest, GetAllCourseDetailsRequest and DeleteCourseDetailsRequest?

  • How to use Wizdler to execute SOAP Requests?

  • How to implement exception handling for SOAP Web Services?

  • How to implement basic security with WS Security for SOAP Web Services?


COURSE HIGHLIGHTS:


RESTful Web Services 

  • Step 01 - Initializing a RESTful Services Project with Spring Boot

  • Step 02 - Understanding the RESTful Services we would create in this course

  • Step 03 - Creating a Hello World Service

  • Step 04 - Enhancing the Hello World Service to return a Bean

  • Step 05 - Quick Review of Spring Boot Auto Configuration and Dispatcher Servlet - What's happening in the background?

  • Step 06 - Enhancing the Hello World Service with a Path Variable

  • Step 07 - Creating User Bean and User Service

  • Step 08 - Implementing GET Methods for User Resource

  • Step 09 - Implementing POST Method to create User Resource

  • Step 10 - Enhancing POST Method to return correct HTTP Status Code and Location URI

  • Step 11 - Implementing Exception Handling - 404 Resource Not Found

  • Step 12 - Implementing Generic Exception Handling for all Resources

  • Step 13 - Exercise : User Post Resource and Exception Handling

  • Step 14 - Implementing DELETE Method to delete a User Resource

  • Step 15 - Implementing Validations for RESTful Services

  • Step 16 - Implementing HATEOAS for RESTful Services

  • Step 17 - Overview of Advanced RESTful Service Features

  • Step 18 - Internationalization for RESTful Services

  • Step 19 - Content Negotiation - Implementing Support for XML

  • Step 20 - Configuring Auto Generation of Swagger Documentation

  • Step 21 - Introduction to Swagger Documentation Format

  • Step 22 - Enhancing Swagger Documentation with Custom Annotations

  • Step 23 - Monitoring APIs with Spring Boot Actuator

  • Step 24 - Implementing Static Filtering for RESTful Service

  • Step 25 - Implementing Dynamic Filtering for RESTful Service

  • Step 26 - Versioning RESTful Services - Basic Approach with URIs

  • Step 27 - Versioning RESTful Services - Header and Content Negotiation Approaches

  • Step 28 - Implementing Basic Authentication with Spring Security

  • Step 29 - Overview of Connecting RESTful Service to JPA

  • Step 30 - Creating User Entity and some test data

  • Step 31 - Updating GET methods on User Resource to use JPA

  • Step 32 - Updating POST and DELETE methods on User Resource to use JPA

  • Step 33 - Creating Post Entity and Many to One Relationship with User Entity

  • Step 34 - Implementing a GET service to retrieve all Posts of a User

  • Step 35 - Implementing a POST service to create a Post for a User

  • Step 36 - Richardson Maturity Model

  • Step 37 - RESTful Services Best Practices

SOAP Web Services

  • Step 01 - Initialize a Spring Web Services application with Spring Boot

  • Step 02 - Overview of creating SOAP Web Service using Contract First Approach

  • Step 03 - Define Request and Response XML Structure

  • Step 04 - Define XML Schema Definition (XSD) for Request - GetCourseDetailsRequest

  • Step 05 - Define XML Schema Definition (XSD) for Respone - GetCourseDetailsResponse

  • Step 06 - More about XML Schema Definition and Implementing XSD Best Practices

  • Step 07 - Introduction to Java API for XML Binding (JAXB) and Configuring JAXB 2 Maven Plugin

  • Step 08 - Configuring an Endpoint for GetCourseDetailsRequest

  • Step 09 - Spring Web Services Configuration - Message Dispatcher Servlet

  • Step 10 - Spring Web Services Configuration - Generating WSDL

  • Step 11 - Using Wizdler to execute SOAP Requests

  • Step 12 - Implementing a service - Course Details Service - backend with in memory array list

  • Step 13 - Implementing SOAP Web Service for GetAllCourseDetailsRequest

  • Step 14 - Quick introduction to different parts of a WSDL

  • Step 15 - Implementing SOAP Web Service for DeleteCourseDetailsRequest

  • Step 16 - Improving the DeleteCourseDetailsRequest - Using an Enum for Status

  • Step 17 - Exception Handling and SOAP Fault Responses

  • Step 18 - Implementing Security for SOAP Web Services with WS Security

Start Learning Now. Hit the Enroll Button!



Screenshots

Master Java Web Services and RESTful API with Spring Boot
Master Java Web Services and RESTful API with Spring Boot
Master Java Web Services and RESTful API with Spring Boot
Master Java Web Services and RESTful API with Spring Boot

Content

Getting Started

Introduction

Congratulations

Introduction to Course & Course Guide

Introduction To Web Services

Introduction To Web Services - An Overview

What is a Web Service?

Important How Questions related to Web Services

Web Services - Key Terminology

Introduction to SOAP Web Services

Introduction to RESTful Web Services

SOAP vs RESTful Web Services

Introduction to Spring Framework in 10 Steps

First 10 Steps in Spring - An Overview

Step 1 : Setting up a Spring Project using htttp://start.spring.io

Fastest Approach to Solve All Your Exceptions

Step 2 : Understanding Tight Coupling using the Binary Search Algorithm Example

Step 3 : Making the Binary Search Algorithm Example Loosely Coupled

Step 4 : Using Spring to Manage Dependencies - @Component, @Autowired

Step 5 : What is happening in the background?

Step 6 : Dynamic auto wiring and Troubleshooting - @Primary

Step 7 : Constructor and Setter Injection

Step 8 : Spring Modules

Step 9 : Spring Projects

Step 10 : Why is Spring Popular?

Introduction to Spring Boot in 10 Steps

First 10 Steps in Spring Boot - An Overview

Step 1 : Introduction to Spring Boot - Goals and Important Features

Step 2 : Developing Spring Applications before Spring Boot

Step 3 : Using Spring Initializr to create

Step 4 : Creating a Simple REST Controller

Step 5 : What is Spring Boot Auto Configuration?

Step 6 : Spring Boot vs Spring vs Spring MVC

Step 7 : Spring Boot Starter Projects - Starter Web and Starter JPA

Step 8 : Overview of different Spring Boot Starter Projects

Step 9 : Spring Boot Actuator

Step 10 : Spring Boot Developer Tools

SOAP Web Services with Spring and Spring Boot

SOAP Web Services - An Overview

Step 01 - Initialize a Spring Web Services application with Spring Boot

Step 02 - Overview of creating SOAP Web Service using Contract First Approach

Step 03 - Define Request and Response XML Structure

Step 04 - Define XML Schema Definition (XSD) for Request - GetCourseDetailsReque

Step 05 - Define XML Schema Definition (XSD) for Response - GetCourseDetailsResp

Step 06 - More about XML Schema Definition and Implementing XSD Best Practices

Step 07 - Introduction to Java API for XML Binding (JAXB) and Configuring JAXB 2

Step 08 - Configuring an Endpoint for GetCourseDetailsRequest

Step 09 - Spring Web Services Configuration - Message Dispatcher Servlet

Step 10 - Spring Web Services Configuration - Generating WSDL

Step 11 - Using Wizdler to execute SOAP Requests

Step 12 - Implementing a service - Course Details Service - backend with in memo

Step 13 - Implementing SOAP Web Service for GetAllCourseDetailsRequest

Step 14 - Quick introduction to different parts of a WSDL

Step 15 - Implementing SOAP Web Service for DeleteCourseDetailsRequest

Step 16 - Improving the DeleteCourseDetailsRequest - Using an Enum for Status

Step 17 - Exception Handling and SOAP Fault Responses

Step 18 - Implementing Security for SOAP Web Services with WS Security

RESTful Web Services with Spring and Spring Boot

RESTful Web Services - An Overview

Step 01 - Initializing a RESTful Services Project with Spring Boot

Step 02 - Understanding the RESTful Services we would create in this course

Step 03 - Creating a Hello World Service

Step 04 - Enhancing the Hello World Service to return a Bean

Step 05 - Quick Review of Spring Boot Auto Configuration and Dispatcher Servlet

Step 06 - Enhancing the Hello World Service with a Path Variable

Step 07 - Creating User Bean and User Service

Step 08 - Implementing GET Methods for User Resource

Step 09 - Implementing POST Method to create User Resource

Step 10 - Enhancing POST Method to return correct HTTP Status Code and Location

Step 11 - Implementing Exception Handling - 404 Resource Not Found

Step 12 - Implementing Generic Exception Handling for all Resources

Step 13 - Exercise : User Post Resource and Exception Handling

Step 14 - Implementing DELETE Method to delete a User Resource

Recommended Spring Boot Version - 2.1.3.RELEASE

Step 15 - Implementing Validations for RESTful Services

Quick Tip : HATEOAS Recent Changes

Step 16 - Implementing HATEOAS for RESTful Services

Step 17 - Overview of Advanced RESTful Service Features

Step 18 - Internationalization for RESTful Services

Step 18 - Part 2 - Internationalization

Step 19 - Content Negotiation - Implementing Support for XML

Step 20 - Configuring Auto Generation of Swagger Documentation

Step 21 - Introduction to Swagger Documentation Format

Course Update : Incompatibility in recent versions of Swagger and Hateoas

Step 22 - Enhancing Swagger Documentation with Custom Annotations

Step 23 - Monitoring APIs with Spring Boot Actuator

Step 24 - Implementing Static Filtering for RESTful Service

Step 25 - Implementing Dynamic Filtering for RESTful Service

Step 26 - Versioning RESTful Services - Basic Approach with URIs

Step 27 - Versioning RESTful Services - Header and Content Negotiation Approach

Step 28 - Implementing Basic Authentication with Spring Security

Introduction to JPA in 10 Steps

Introduction to JPA - An Overview

Step 1 : Object Relational Impedence Mismatch

Step 2 : World before JPA - JDBC, Spring JDBC and myBatis

Step 3 : Introduction to JPA

Step 4 : Creating a JPA Project using Spring Initializr

Step 5 : Defining a JPA Entity - User

Step 6 : Defining a Service to manage the Entity - UserService and EntityManager

Step 7 : Using a Command Line Runner to save the User to database.

Step 8 : Magic of Spring Boot and In Memory Database H2

Step 9 : Introduction to Spring Data JPA

Step 10 : More JPA Repository : findById and findAll

Connecting RESTful Web Service to JPA

Step 29 - Overview of Connecting RESTful Service to JPA

Step 30 - Creating User Entity and some test data

Step 31 - Updating GET methods on User Resource to use JPA

Step 32 - Updating POST and DELETE methods on User Resource to use JPA

Step 33 - Creating Post Entity and Many to One Relationship with User Entity

Step 34 - Implementing a GET service to retrieve all Posts of a User

Step 35 - Implementing a POST service to create a Post for a User

RESTful Web Services - Best Practices

Step 36 - Richardson Maturity Model

Step 37 - RESTful Web Services - Best Practices

Congratulations

Bonus Lecture

Congratulations


Reviews

M
Mridul27 September 2020

The content here is not like what we follow in real-time project development. The content available is like a very introductory level just to get an idea of the topic, if you think after going these lectures you can develop a real-world application then you are completely wrong. None of the standard practices used in the real-world are followed in this lecture and lectures are boring. Moreover, lectures were recorded in 2017 which are outdated now in the year 2020.

M
Miguel23 September 2020

Is a good explanation. Just maybe connect to a real database or create a webpage with a main webservices would be cool

S
Sumesh12 September 2020

Trainer is too fast over things, many times I lost him and had to replay the video over and over again to get a hold. Maybe he teaches according to his proficiency and not the target audience. Sometimes does not explain or comment why a particular step is done just goes ahead with the code and have to figure it out on our own. This is what i felt till now.

A
Akash11 September 2020

In this package Ranga has tried to cover all the topics of REST API along with soap and spring boot which is great. Now there is no word in the dictionary which I don't know. After this, we have to do practice it and explore the spring official website.

M
Michael30 August 2020

Really good explanations of the API structure as well as practical examples. The instructor makes a good effort to explain the code rather than just writing code to serve as a copy/paste template. There are some issues regarding the age of the material but updates are addressed either in supplementary files or in the Q&A.

D
Dmitriy13 February 2020

Great explanations! Short videos that are easy to follow along with! A lot of info packed into one course. Will be looking into more courses by in28minutes.

K
Kenneth12 February 2020

Everything is clear and very well explained. I am having quite the fun with the class and it has currently gone beyond my expectations.

A
Arun11 February 2020

I did not find more practical here , please make it as practical with example and try to implement and explain them

L
Luis8 February 2020

I liked the course and I am very satisfied. The thing I believed was missing was the use of ManyToMany through the JPA module. For the future, I recommend giving classes developing a "real" project.

A
Abhinav7 February 2020

the instructor is clear but very slow explaining which makes the video longer. The content itself is very basic, mostly what is already in spring learning guides online which is free.

I
Indumati6 February 2020

It is a good match but while doing the same things practically as shown in the video there are lot more issues.

L
Leonidas3 February 2020

There were some inconsistencies due to the constant evolution of the Spring framework. Especially the part of SOAP Services with JAXB and the outdated version 1.6 needs revising!

A
Ajay31 January 2020

Its a very good course and has what one would need to start with development. Some of the concepts could have been explained in a bit more details.

S
Syed28 January 2020

Every required step explained in a very clear manner for beginners. Would be good if the instructor highlights the short cut keys been used

B
Ben28 January 2020

Have to say, this was one of the better courses in terms of pace, depth of explanation, and clarity of the instructor! It's been 6 years since I touched anything related to Spring and this was able to get back up to speed in a day on 1.5x-2.0x speed!! Highly recommended!


Related Courses

SKILLSHARE
Learn Spring Framework
Learn Spring Framework
SKILLSHARE
Learn Spring Framework the Easy Way!
Learn Spring Framework the Easy Way!
SKILLSHARE
Spring Framework Fundamentals
Spring Framework Fundamentals

1302610

Udemy ID

7/24/2017

Course created date

7/31/2019

Course Indexed date
Bot
Course Submitted by

Twitter
Telegram