Master Java Web Services and REST API with Spring Boot

Master Java Web Services and REST API with Spring Boot

English | MP4 | AVC 1280×720 | AAC 44KHz 2ch | 9.5 Hours | 1.12 GB

Learn to develop RESTful and SOAP Java Web Services with Spring and Spring Boot in 90 easy steps

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), Swagger (Documentation), 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?
Table of Contents

Getting Started
1 Introduction
2 Congratulations.html
3 One Thing You Should Do
4 Course Overview
5 Introduction To Github Repository
6 Installing Basic Tools

Introduction To Web Services
7 Introduction To Web Services – An Overview
8 What is a Web Service_
9 Important How Questions related to Web Services
10 Web Services – Key Terminology
11 Introduction to SOAP Web Services
12 Introduction to RESTful Web Services
13 SOAP vs RESTful Web Services

Introduction to Spring Framework in 10 Steps
14 First 10 Steps in Spring – An Overview
15 Step 1 _ Setting up a Spring Project using htttp___start_spring_io
16 Step 2 _ Understanding Tight Coupling using the Binary Search Algorithm Example
17 Step 3 _ Making the Binary Search Algorithm Example Loosely Coupled
18 Step 4 _ Using Spring to Manage Dependencies – @Component_ @Autowired
19 Step 5 _ What is happening in the background_
20 Step 6 _ Dynamic auto wiring and Troubleshooting – @Primary
21 Step 7 _ Constructor and Setter Injection
22 Step 8 _ Spring Modules
23 Step 9 _ Spring Projects
24 Step 10 _ Why is Spring Popular_

Introduction to Spring Boot in 10 Steps
25 First 10 Steps in Spring Boot – An Overview
26 Step 1 _ Introduction to Spring Boot – Goals and Important Features
27 Step 2 _ Developing Spring Applications before Spring Boot
28 Step 3 _ Using Spring Initializr to create
29 Step 4 _ Creating a Simple REST Controller
30 Step 5 _ What is Spring Boot Auto Configuration_
31 Step 6 _ Spring Boot vs Spring vs Spring MVC
32 Step 7 _ Spring Boot Starter Projects – Starter Web and Starter JPA
33 Step 8 _ Overview of different Spring Boot Starter Projects
34 Step 9 _ Spring Boot Actuator
35 Step 10 _ Spring Boot Developer Tools

SOAP Web Services with Spring and Spring Boot
36 SOAP Web Services – An Overview
37 Step 01 – Initialize a Spring Web Services application with Spring Boot
38 Step 02 – Overview of creating SOAP Web Service using Contract First Approach
39 Step 03 – Define Request and Response XML Structure
40 Step 04 – Define XML Schema Definition (XSD) for Request – GetCourseDetailsReque
41 Step 05 – Define XML Schema Definition (XSD) for Response – GetCourseDetailsResp
42 Step 06 – More about XML Schema Definition and Implementing XSD Best Practices
43 Step 07 – Introduction to Java API for XML Binding (JAXB) and Configuring JAXB 2
44 Step 08 – Configuring an Endpoint for GetCourseDetailsRequest
45 Step 09 – Spring Web Services Configuration – Message Dispatcher Servlet
46 Step 10 – Spring Web Services Configuration – Generating WSDL
47 Step 11 – Using Wizdler to execute SOAP Requests
48 Step 12 – Implementing a service – Course Details Service – backend with in memo
49 Step 13 – Implementing SOAP Web Service for GetAllCourseDetailsRequest
50 Step 14 – Quick introduction to different parts of a WSDL
51 Step 15 – Implementing SOAP Web Service for DeleteCourseDetailsRequest
52 Step 16 – Improving the DeleteCourseDetailsRequest – Using an Enum for Status
53 Step 17 – Exception Handling and SOAP Fault Responses
54 Step 18 – Implementing Security for SOAP Web Services with WS Security

RESTful Web Services with Spring and Spring Boot
55 RESTful Web Services – An Overview
56 Step 01 – Initializing a RESTful Services Project with Spring Boot
57 Step 02 – Understanding the RESTful Services we would create in this course
58 Step 03 – Creating a Hello World Service
59 Step 04 – Enhancing the Hello World Service to return a Bean
60 Step 05 – Quick Review of Spring Boot Auto Configuration and Dispatcher Servlet
61 Step 06 – Enhancing the Hello World Service with a Path Variable
62 Step 07 – Creating User Bean and User Service
63 Step 08 – Implementing GET Methods for User Resource
64 Step 09 – Implementing POST Method to create User Resource
65 Step 10 – Enhancing POST Method to return correct HTTP Status Code and Location
66 Step 11 – Implementing Exception Handling – 404 Resource Not Found
67 Step 12 – Implementing Generic Exception Handling for all Resources
68 Step 13 – Exercise _ User Post Resource and Exception Handling
69 Step 14 – Implementing DELETE Method to delete a User Resource
70 Step 15 – Implementing Validations for RESTful Services
71 Step 16 – Implementing HATEOAS for RESTful Services
72 Step 17 – Overview of Advanced RESTful Service Features
73 Step 18 – Internationalization for RESTful Services
74 Step 19 – Content Negotiation – Implementing Support for XML
75 Step 20 – Configuring Auto Generation of Swagger Documentation
76 Step 21 – Introduction to Swagger Documentation Format
77 Step 22 – Enhancing Swagger Documentation with Custom Annotations
78 Step 23 – Monitoring APIs with Spring Boot Actuator
79 Step 24 – Implementing Static Filtering for RESTful Service
80 Step 25 – Implementing Dynamic Filtering for RESTful Service
81 Step 26 – Versioning RESTful Services – Basic Approach with URIs
82 Step 27 – Versioning RESTful Services – Header and Content Negotiation Approach
83 Step 28 – Implementing Basic Authentication with Spring Security

Introduction to JPA in 10 Steps
84 Introduction to JPA – An Overview
85 Step 1 _ Object Relational Impedence Mismatch
86 Step 2 _ World before JPA – JDBC_ Spring JDBC and myBatis
87 Step 3 _ Introduction to JPA
88 Step 4 _ Creating a JPA Project using Spring Initializr
89 Step 5 _ Defining a JPA Entity – User
90 Step 6 _ Defining a Service to manage the Entity – UserService and EntityManager
91 Step 7 _ Using a Command Line Runner to save the User to database_
92 Step 8 _ Magic of Spring Boot and In Memory Database H2
93 Step 9 _ Introduction to Spring Data JPA
94 Step 10 _ More JPA Repository _ findById and findAll

Connecting RESTful Web Service to JPA
95 Step 29 – Overview of Connecting RESTful Service to JPA
96 Step 30 – Creating User Entity and some test data
97 Step 31 – Updating GET methods on User Resource to use JPA
98 Step 32 – Updating POST and DELETE methods on User Resource to use JPA
99 Step 33 – Creating Post Entity and Many to One Relationship with User Entity
100 Step 34 – Implementing a GET service to retrieve all Posts of a User
101 Step 35 – Implementing a POST service to create a Post for a User

RESTful Web Services – Best Practices
102 Step 36 – Richardson Maturity Model
103 Step 37 – RESTful Web Services – Best Practices

Congratulations
104 Bonus Lecture _ Our Best Selling Courses
105 Congratulations