Udemy
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
Development
Web Development Data Science Mobile Development Programming Languages Game Development Database Design & Development Software Testing Software Engineering Development Tools No-Code Development
Business
Entrepreneurship Communications Management Sales Business Strategy Operations Project Management Business Law Business Analytics & Intelligence Human Resources Industry E-Commerce Media Real Estate Other Business
Finance & Accounting
Accounting & Bookkeeping Compliance Cryptocurrency & Blockchain Economics Finance Finance Cert & Exam Prep Financial Modeling & Analysis Investing & Trading Money Management Tools Taxes Other Finance & Accounting
IT & Software
IT Certification Network & Security Hardware Operating Systems Other IT & Software
Office Productivity
Microsoft Apple Google SAP Oracle Other Office Productivity
Personal Development
Personal Transformation Personal Productivity Leadership Career Development Parenting & Relationships Happiness Esoteric Practices Religion & Spirituality Personal Brand Building Creativity Influence Self Esteem & Confidence Stress Management Memory & Study Skills Motivation Other Personal Development
Design
Web Design Graphic Design & Illustration Design Tools User Experience Design Game Design Design Thinking 3D & Animation Fashion Design Architectural Design Interior Design Other Design
Marketing
Digital Marketing Search Engine Optimization Social Media Marketing Branding Marketing Fundamentals Marketing Analytics & Automation Public Relations Advertising Video & Mobile Marketing Content Marketing Growth Hacking Affiliate Marketing Product Marketing Other Marketing
Lifestyle
Arts & Crafts Beauty & Makeup Esoteric Practices Food & Beverage Gaming Home Improvement Pet Care & Training Travel Other Lifestyle
Photography & Video
Digital Photography Photography Portrait Photography Photography Tools Commercial Photography Video Design Other Photography & Video
Health & Fitness
Fitness General Health Sports Nutrition Yoga Mental Health Dieting Self Defense Safety & First Aid Dance Meditation Other Health & Fitness
Music
Instruments Music Production Music Fundamentals Vocal Music Techniques Music Software Other Music
Teaching & Academics
Engineering Humanities Math Science Online Education Social Science Language Teacher Training Test Prep Other Teaching & Academics
AWS Certification Microsoft Certification AWS Certified Solutions Architect - Associate AWS Certified Cloud Practitioner CompTIA A+ Cisco CCNA Amazon AWS CompTIA Security+ AWS Certified Developer - Associate
Graphic Design Photoshop Adobe Illustrator Drawing Digital Painting InDesign Character Design Canva Figure Drawing
Life Coach Training Neuro-Linguistic Programming Personal Development Mindfulness Personal Transformation Meditation Life Purpose Coaching Neuroscience
Web Development JavaScript React CSS Angular PHP WordPress Node.Js Python
Google Flutter Android Development iOS Development Swift React Native Dart Programming Language Mobile Development Kotlin SwiftUI
Digital Marketing Google Ads (Adwords) Social Media Marketing Google Ads (AdWords) Certification Marketing Strategy Internet Marketing YouTube Marketing Email Marketing Retargeting
SQL Microsoft Power BI Tableau Business Analysis Business Intelligence MySQL Data Analysis Data Modeling Big Data
Business Fundamentals Entrepreneurship Fundamentals Business Strategy Online Business Business Plan Startup Freelancing Blogging Home Business
Unity Game Development Fundamentals Unreal Engine C# 3D Game Development C++ 2D Game Development Unreal Engine Blueprints Blender
30-Day Money-Back Guarantee

This course includes:

  • 38.5 hours on-demand video
  • 6 articles
  • 104 downloadable resources
  • Full lifetime access
  • Access on mobile and TV
  • Assignments
Development Software Engineering Spring Boot

Spring Boot Microservices with Spring Cloud Beginner to Guru

Learn to Master Spring Boot Microservices with Spring Cloud and Docker
Rating: 4.5 out of 54.5 (2,052 ratings)
15,582 students
Created by John Thompson
Last updated 11/2020
English
English
30-Day Money-Back Guarantee

What you'll learn

  • Learn how to develop Microservices with Spring Boot
  • Learn how to deploy and manage Spring Boot Microservices with Spring Cloud
  • How to deconstruct a monolith into Spring Boot Microservices
  • Best Practices for Developing RESTFul APIs with Spring MVC
  • How to consume RESTFul APIs using Spring RestTemplate
  • Using Java Bean Validation with Spring Boot
  • How to use Project Lombok and MapStruct to reduce boiler plate code
  • Generate API documentation with Spring REST Doc
  • Configure Jackson for JSON processing with Spring Boot
  • Use JMS for messaging between Spring Boot Microservices
  • Use Spring State Machine to Apply the Saga Pattern with Microservices
Curated for the Udemy for Business collection

Course content

30 sections • 346 lectures • 38h 18m total length

  • Preview05:38
  • Preview07:48
  • Preview07:23
  • Preview03:21
  • Slack Group for Spring Boot Microservices with Spring Cloud B2G
    00:55
  • Is your IDE Free Like A Puppy?
    04:32
  • Free 120 Day IntelliJ IDEA Trial!
    00:41

  • Preview01:14
  • The Traditional Monolith Application
    Preview08:19
  • What are Microservices?
    07:17
  • What is the Cloud?
    07:19
  • Adopting Microservices in Your Organization
    06:25
  • Microservices Quiz
    10 questions
  • Microservice Architecture and Design
    08:48
  • 12 Factor Applications
    09:59
  • Introduction to Microservices Conclusion
    03:02

  • Preview01:26
  • HTTP Protocol
    05:49
  • HTTP Request Methods
    06:43
  • Beginners Guide to REST
    06:06
  • Richardson Maturity Model
    Preview07:26
  • Spring Framework and RESTFul Services
    04:29
  • Quiz - RESTful Web Services
    12 questions
  • Conclusion
    01:41

  • Introduction
    01:15
  • Introducing SFG Beer Works
    07:49
  • HTTP GET with Spring MVC
    22:05
  • Preview05:41
  • Axis TCPMon
    04:15
  • Assignment - Create GET Endpoint with Spring MVC
    01:10
  • Assignment - Create Get Endpoint with Spring MVC
    1 question
  • Assignment Review
    08:46
  • HTTP POST with SpringMVC
    05:37
  • Spring Boot Development Tools
    07:39
  • HTTP PUT with Spring MVC
    04:21
  • Spring MVC @RequestBody Annotation
    08:13
  • HTTP DELETE with Spring MVC
    03:57
  • Assignment - HTTP Operations with Spring MVC
    01:14
  • Assignment Review
    08:17
  • API Versioning
    05:17
  • API Versioning Example
    09:02
  • API Versioning and Source Control
    05:14
  • Spring MVC Rest Quiz
    6 questions
  • LC Beer Service - Initial Spring Boot Project Creation
    09:12
  • LC Beer Service - Data Model
    08:31
  • LC Beer Service - Beer Controller
    06:07
  • LC Beer Service - JUnit 5 Controller Tests
    08:54
  • Conclusion to Spring MVC Rest Services
    00:56

  • Introduction to Spring Boot RestTemplate
    02:06
  • HTTP GET with Spring RestTemplate
    19:49
  • HTTP POST with Spring RestTemplate
    03:59
  • HTTP PUT with Spring RestTemplate
    04:00
  • HTTP DELETE with Spring RestTemplate
    04:37
  • Assignment - Create Spring RestTemplate clients
    01:39
  • Assignment Review
    06:07
  • HTTP Clients
    09:23
  • Apache HTTP Client Configuration
    09:25
  • Apache Client Request Logging
    05:14
  • Assignment - Externalize Properties
    02:58
  • Assignment Review
    08:15
  • LC - JPA Entities
    07:09
  • LC - Spring Data JPA Repositories
    03:33
  • LC - Bootstrap Data
    07:18
  • Conclusion to Spring Boot RestTemplate
    01:10

  • Introduction
    01:38
  • Java Bean Validation
    08:12
  • Bean Validation Implementation
    07:22
  • Validation Error Handling
    04:38
  • Spring Boot Method Validation
    02:25
  • Assignment - Add Validation and Error Handling
    01:29
  • Assignment Review
    04:57
  • Spring MVC Controller Advice
    05:24
  • LC - Bean Validation
    03:51
  • LC - Validation and Error Handling
    05:28
  • Conclusion to Spring MVC Validation
    01:16

  • Introduction
    02:32
  • Overview of Project Lombok
    09:30
  • Project Lombok Configuration
    05:50
  • Project Lombok Examples
    05:39
  • Overview of MapStruct
    05:35
  • MapStruct Configuration
    07:27
  • Example of using Project Lombok and MapStruct
    06:20
  • Assignment - Use MapStruct
    01:18
  • Assignment Review
    03:47
  • Date Conversion with MapStruct
    04:28
  • LC - Implementing MapStruct
    06:31
  • LC - Fixing Broken Tests
    03:20
  • LC - Adding CI Builds with CircleCI
    06:43
  • Conclusion
    01:34

  • Introduction
    02:11
  • Spring REST Docs Introduction
    05:06
  • Project Code Review
    05:54
  • Maven Configuration
    06:20
  • Spring Mock MVC Configuration
    04:32
  • Documenting Path Parameters
    06:08
  • Documenting Query Parameters
    02:26
  • Documenting Responses
    03:12
  • Documenting Requests
    04:12
  • Documenting Validation Constraints
    10:41
  • URI Customization
    03:17
  • Documentation Generation
    08:53
  • Serving Docs with Spring Boot
    04:03
  • Assignment - Add Spring REST Doc to Project
    02:25
  • Assignment Review
    07:24
  • Conclusion
    01:53

  • Introduction
    02:07
  • JSON with Spring Boot Overview
    05:46
  • Overview of Jackson
    09:07
  • Json Testing with Spring Boot
    06:20
  • Jackson Property Naming Strategies
    05:06
  • Assignment - Configure Property Naming Strategy
    01:15
  • Assignment Review
    04:14
  • Setting Property Names with Jackson
    04:14
  • Using @JsonFormat with Jackson
    04:12
  • Custom Serializer with Jackson
    05:32
  • Custom Deserializer with Jackson
    06:42
  • LC - Jackson Configuration
    02:27
  • LC - Jackson JSON Creator
    03:28
  • LC - Beer Service - Implement Controller Methods
    12:20
  • LC - Beer Service - Adding standard UPCs
    07:39
  • Conclusion
    01:27

  • Introduction
    03:24
  • SFG Brewery Monolith
    05:13
  • Monolith Project Code Review
    10:47
  • Deconstruction Strategies
    09:26
  • Monolith Deconstruction Plan
    05:31
  • Beer Service Code Review
    02:48
  • Beer Order Service Code Review
    06:32
  • Beer Inventory Service Code Review
    08:08
  • Setting Default Ports for Services
    05:20
  • Data Initialization
    05:21
  • Enhance Get Beer with Inventory Information
    14:31
  • Assignment - Add Show Inventory as Parameter
    01:35
  • Assignment Review
    07:33
  • Add Caching to Get Beer API
    10:59
  • Assignment - Create Get Beer by UPC Endpoint
    01:30
  • Assignment Review
    07:19
  • Save UPC on Beer Order
    02:32
  • Assignment - Enhance Order Response with Beer Information
    01:45
  • Assignment Review
    08:28
  • Deconstruction Next Steps
    05:10
  • Conclusion
    01:04

Requirements

  • Must know Java and Spring Framework
  • Basic Docker Skills
  • SQL Skills - MySQL is used in course
  • Linux skills helpful

Description

Microservices are all the buzz in the industry right now.

Building a microservice is not just a matter of using RESTFul APIs.

Microservices are much MUCH more than that.

In this course you will learn that Microservices are an architectural style. The allow companies to achieve massive scale while maintaining a high degree of flexibility. 

This course goes beyond simple RESTful APIs and explores microservices as an architectural style.

** What Students are Saying about the Course **

★★★★★ Great course, you can be sure about it. If you're fairly new to the java world and spring framework, I highly suggest to follow Spring Framework from beginner to guru (the teacher is always John). In my experience I can tell you that after the first course, I managed to progress in my career twice, with praises of my colleagues and managers. The content of both courses is very well explained and easy to learn. If you want to stand out, definitely this course worth the money.

★★★★★ Very good course on microservices with Spring! It gave me a good starting point for the upcoming task at my work! 5* all the way for John!

★★★★★ I like this course a lot! It's exactly what I needed after some experience with Spring Boot, to go to the next level. A lot of applications are presented, giving the opportunity to exercise what you've learned. The assignments are also very welcomed.

★★★★★ Very VERY good content, well structured approach and clear explanations. Very enjoyable and educative. I'm even picking up a few techniques / frameworks I hadn't really used before.

About the Course

Traditionally, large enterprise class applications were developed as large monolithic applications.

The Spring Framework started as an alternative to J2EE (now JEE) for building these large monolithic enterprise applications.

As the industry evolved to favor microservices over monoliths, the Spring Framework and Spring Boot evolved also.

The Spring Framework gives you a battle-tested enterprise grade framework for building applications.

Spring Boot and Spring Cloud are tools specifically for the development of microservices using the Spring Framework.

Microservices present a unique set of challenges over monoliths. Spring Boot and Spring Cloud help you overcome these changes.

  • What are these challenges that microservices have, which traditional monoliths do not?

  • Is it okay for microservices to share databases?

  • How do you coordinate business logic across a series of microservices?

  • How do you manage transactions across serval microservices with different databases?

To explain these questions, in this course you get to explore a traditional Spring Boot monolith type of application. (Along the style of Spring Pet Clinic).

We will then re-create this monolithic application using a set of microservices.

You get to see, step by step how to build 3 different microservices.

Microservices are much more than just having a set of RESTFul APIs. Microservices frequently use asynchronous messaging systems, which is fully covered.

While the Spring Framework and Spring Boot are the tools you use to construct Microservices, Spring Cloud provides the tools to deploy microservices.

You get to see the latest tools in Spring Cloud for deploying Spring Boot Microservices into a distributed (or cloud) environment.

In 2018, Netflix announced several core projects to Spring Cloud were entering maintenance mode. Meaning no new development would be done on these projects.

Thus, in December of 2018, the Spring Cloud Team recommended several key replacements:

Previous               Replacement

Hystrix         -->      Resliience4J

Ribbon         -->     Spring Cloud Load Balancer

Zuul 1           -->     Spring Cloud Gateway

Archaius 1    -->    Spring Cloud Config

Therefore, the recommend replacements are covered in this course.

Covered in this Course

In this course you will learn:

  • Develop RESTful Services using Spring MVC

  • Consume RESTFul Services with Spring RestTemplate

  • How to use Project Lombok

  • How to use MapStruct

  • Spring Data JPA with Hibernate

  • Configuration of Spring Boot for MySQL and H2

  • How to use and configure Jackson for processing JSON with Spring Boot

  • Data validation with Spring Boot and Hibernate Validator

  • Documentation and testing of Spring Boot microservices using Spring RESTdocs

  • Standardizing dependencies using Apache Maven

  • Spring Application Events

  • Using JMS Messaging using Apache ActiveMQ Artemis

  • The microservice Saga Pattern

  • How to use Spring State Machine for coordinating Sagas

  • Integration Testing using Spring Boot and JUnit 5

  • Using WireMock with JUnit 5

  • How to use Awaitily in your Integration Tests

  • The API Gateway pattern using Spring Cloud Gateway

  • Load Balanced Routes using Netflix Ribbon / Spring Cloud Loadbalancer

  • Service Registration using Netflix Eureka

  • Service Discovery with Netflix Eureka

  • Service Discovery using Spring Cloud OpenFeign

  • Circuit Breaker Pattern using Reslience4J and Hystrix / Spring Cloud OpenFeign

  • Manage configuration with Spring Cloud Config

  • Distributed tracing with Spring Cloud Sleuth and Zipkin

  • Securing Spring Cloud with Spring Security

  • Use Docker to create images for your Spring Boot applications

  • Push your Docker Images to Docker Hub

  • Configure Logback with Logstash for JSON logging output

  • Using Docker Compose to start and stop your microservices

  • Use ELK stack (Elasticsearch, Logstash, Kibana) for consolidated Logging

  • Provision virtual machines in the cloud for Eureka, Apache ActiveMQ Artemis, Spring Cloud Config, Zipkin, Elasticsearch, and Kibana.

  • Provision MySQL databases using Digital Ocean.

  • Create Docker Droplets (aka Virtual Machines) in Digital Ocean

  • Deploy Spring Cloud Config in the the cloud with Eureka

  • Create a Docker Swarm Cluster for Spring Boot Microservices

And much much more!

Inside the Course

  • Links all source code examples (Dozens of GitHub repositories are used for this course!)

  • Challenging Assignments

  • All slides are downloadable as PDFs for your reference and study

Course Extra - IntelliJ IDEA Ultimate

Students enrolling in the course can receive a free 4 month trial license to IntelliJ IDEA Ultimate! Get hands on experience using the Java IDE preferred by Spring Framework professionals! 

Course Extra - Access to a Private Slack Community

You're not just enrolling in a course --> You are joining a community learning Spring.

With your enrollment to the course, you can access an exclusive Slack community. Get help from the instructor and other Spring Framework Gurus from around the world - in real time! This community is only available to students enrolled in this course. 

This is a very active Slack community with hundreds Spring Framework Gurus from around the world!

When you enroll in this course, you can join this community of awesome gurus!

Who this course is for:

  • Java Developers who wish to learn how to develop Spring Boot Microservices with Spring Cloud

Featured review

Adrian Vinatoru
Adrian Vinatoru
4 courses
2 reviews
Rating: 5.0 out of 511 months ago
I like this course a lot! It's exactly what I needed after some experience with Spring Boot, to go to the next level. A lot of applications are presented, giving the opportunity to exercise what you've learned. The assignments are also very welcomed.

Instructor

John Thompson
Spring Framework Guru - Best Selling Instructor
John Thompson
  • 4.4 Instructor Rating
  • 31,381 Reviews
  • 179,910 Students
  • 17 Courses

Hi. I'm John.

I've been in the IT industry for over 20 years. Today, I specialize mainly in Java, the most successful and widely known programming language in use today. I also specialize with the Spring Framework, which the most popular open source application framework for building enterprise class applications on the Java platform. Just some of the organizations I've worked with include Visa, Kohls, Federal Home Loan Bank, and Belk Department Stores.

Through the courses I'm providing, I hope to leverage my years of experience to accelerate your learning of the Spring Framework. I'm not going to lie to you. The Spring Framework is a big framework. The environment for enterprise Java is even bigger. If you're new to Java, you have a lot to learn. I hope through the content on this web site I can accelerate your education of the Java and Spring landscape.

  • Udemy for Business
  • Teach on Udemy
  • Get the app
  • About us
  • Contact us
  • Careers
  • Blog
  • Help and Support
  • Affiliate
  • Terms
  • Privacy policy
  • Cookie settings
  • Sitemap
  • Featured courses
Udemy
© 2021 Udemy, Inc.