Reactive Programming with Spring Framework 5 (Udemy.com)
Learn Reactive Programming with Spring Framework 5!
Created by: John Thompson
Last updated August 2026
What you will learn
- Learn how to leverage the Reactive Programming Features of Spring Framework 5
- Build microservices with Spring WebFlux
- Leverage Reactive types in Spring Data MongoDB
- Functional Programming with Java
- Java 8 Streams
How it compares
Against the other 101 rated Udemy courses in Java Spring Framework on CourseDuck:
- Rating4.3 out of 5higher than 23% of them
- Reviews1,682#51 of 102 by number of reviews
- Length12.7 hourslonger than 54% of them
- Last updatedAugust 2026more recently than 75% of them
Course Description
NOTE: This course was completely recreated in May 2021 using Java 11 and Spring Boot 2.4.x.
One of the most interesting new features in Spring Framework 5 is Reactive Programming.
Reactive Programming is an important paradigm shift from the traditional object oriented programming commonly used with Java.
Reactive Programming adopts an immutable / functional style (which is fully explained in the course!).
While Reactive Programming may not be an automatic way of making your code faster, it can help your code scale up better. Especially if you are dealing with streams of data.
In side this course, you will first learn the fundamental concepts of Reactive Programming. You'll learn why immutability and functional programming are important to Reactive Programming.
Next, you'll get hands on experience with building a Reactive application to stream 'movie events' leveraging the Reactive data types and WebFlux - both new to Spring Framework 5.
These exercises help get you comfortable using the Reactive Programming APIs and functional programing style.
Following is a whole section on using Spring Web Client. This is the reactive web client introduced in Spring Framework 5. Spring Web Client is the reactive equivalent of Spring RestTemplate.
While Spring Web Client is the equivalent of Spring RestTemplate, Spring Web Flux is the equivalent of Spring MVC. You will learn how to use Spring Web Flux to create a RESTful API.
The JDBC API for accessing relational databases is blocking, and therefore not compatible with Reactive Programming. R2DBC is the reactive equivalent of JDBC. You will see how to use Spring Data R2DBC and reactive types to perform CRUD operations against a Relational Database.
Spring Webflux also introduces a new functional style API for defining endpoints. You will see how to use this functional API to configure a RESTful API. Hello functional programming, good by Spring MVC annotated controller classes!
Where Reactive Programming really excels is dealing streams of data. You will see how to build a stock quote streaming service. Then how to stream those stock quotes into a MongoDB document store. And how to stream stock quotes to RabbitMQ Messages.
Course Extra - IntelliJ IDEA Ultimate
Students enrolling in the course can receive a free 120 day 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 about Reactive Programming.
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.
With your enrollment, you can join this community of awesome gurus!
Closed Captioning / Subtitles
Closed captioning in English is available for all course videos!
PDF Downloads
All keynote presentations are available for you to download as PDFs.
Lifetime Access
When you purchase this course, you will receive lifetime access! You can login anytime from anywhere to access the course content.
No Risk - Money Back Guarantee
You can buy this course with no risk. If you are unhappy with the course, for any reason, you can get a complete refund. The course has a 30 day Money Back Guarantee.
After you complete this course, you will be comfortable in using the Reactive Programming features in your existing or new Spring Framework Applications.
Enroll today and start learning Reactive Programming with Spring Framework 5!
Instructor Details
- 4.3 Rating
1,682 Reviews
John Thompson
Hi. I'm John.
I've been in the IT industry for over 25 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.
More courses by John Thompson
Spring Boot Microservices with Spring Cloud Beginner to Guru (2026)
4.6 (5,706 Reviews)
Provider: Udemy
Time: 42.5h
$18.99
More Java Spring Framework courses
Spring Boot Unit Testing with JUnit, Mockito and MockMvc (2026)
4.8 (4,042 Reviews)
Provider: Udemy
Time: 9.9h
$84.99
Spring WebFlux Masterclass: High-Performance Reactive APIs (2026)
4.8 (1,920 Reviews)
Provider: Udemy
Time: 13.3h
$84.99
Spring Security Zero to Master along with JWT,OAUTH2 (2026)
4.7 (11,228 Reviews)
Provider: Udemy
Time: 24.6h
$12.99
Kafka MicroServices with Spring Boot, Docker, Kubernetes, AI (2026)
4.7 (6,864 Reviews)
Provider: Udemy
Time: 27.2h
$11.99
Domain Driven Design & Microservices for Architects (2023)
4.7 (3,982 Reviews)
Provider: Udemy
Time: 12.7h
$10.99
Microservices with Spring Boot, Spring Cloud, Docker & Kafka (2026)
4.7 (3,777 Reviews)
Provider: Udemy
Time: 42.1h
$94.99
Reviews
By Misael Pecorari on 5/2/2024
Amazing course! Pretty updated with all the topics. Really recommend it. By the way, I think a more complete error handling section should be included, as I needed to explore on the internet for some options. Congrats!
By Thierry BENDA on 6/4/2023
As usual, John Thompson courses are real world training for developers around all the world. His courses are pleasant to listen to and good to learn to, in a fluent english. His courses are my first choice since some years now, to build new skills or sharpen my own skills in various themes as a Java Consultant since +15 years. It's worth the price you have paid. Have a good learning path.
By Rui Miguel Fernandes António on 5/22/2023
It's a good course to understand how to use reactive programming along with Spring, but the instructor just gives you a shallow understanding regarding reactive programming core features. I recommend you to first assist some other course that explores more reactive library and core features, that way you can get the most out of this course.
By Igor Donin on 7/25/2022
JT seems like a nice guy but I found this course wanting. I felt that he is very confused several times. In my opinion, there's also a lot of noise from him chattering a lot and repeats himself even more. JT also pauses a lot during things going wrong and when he comes back there's a lot of code that he does not go through. Many times I was surprised with code that wasn't there before in previous videos. Maybe it's in the resources but finding new stuff just spawn out of nowhere isn't very rich. As a suggestion, maybe you could pause when something goes wrong, but then you do over the solution again, after you've time to figure it out properly. Some of the solutions are just poor workarounds. We all make mistakes when coding you know, but the fact that he needs to pause the videos to sort it out and then come back with everything sorted isn't great. Other instructors can quickly catch on what's wrong and sort things out "live". Section 6 is really flawed. It felt like poor planning and preparation. Maybe he should not be commenting code out but rather writing out code from scratch. In my opinion, learners should be writing code. And writing along is a big part of it. In some situations, it's not clear how a method works. JT quickly comments on top of those methods but there are just too many gaps. I'm not saying he isn't knowledgable. He clearly is. It actually feels that because he is so confident, he's constantly improvising. And sometimes it turns out really bad. Lesson 53 was such a mess. Really bad choices on how to handle not found. A lot of workarounds. To be completely honest, it felt like the solution I'd expect from a beginner. Not only in this lesson but a lot throughout this course: too much imperative programming. At some points, he takes on a more declarative programming style. From section 8 on forward, I felt the course is too shallow. Guess the point was to teach Reactive, period. Problem is that it barely touches the surface of everything in the course. I really want to apologize if any of this reads offensive, it wasn't my intention. But there's so much potential here... I really expected more.
By Ashok Kumar on 3/15/2022
Concepts are not covered properly. Theoretically there is not much explanation about the things which we are using and why we are using. What is the exactly need. If we have to google about them then why we are paying for the course? paid course of 1 specific thing means we are going to get good learning theoretical + practical. For every starting of new concept, i believe we should explain first what, why, how, when etc. There should also be some objective type questions after each section except the assignment also.
By Lorenzo Carlesso on 1/14/2022
I love how JT exposes a little bit of theory mixed with a little bit of practical code. There is a linear path in every section of the course and in every lesson JT adds a little brick to understand the topic section. Spring WebFlux technology is very great and powerfull but not esaily to understand if you have an "HTTP attitude" but JT has the key and the experience to introduce you to that easily.
By Marcus Blackhall on 12/20/2021
I got a good grasp of the spring rractive framework from using the new WebClient, changing controllers to use Handlers. The last section for Rabbit Mq was a little quick but still got a feel for how thevReactive framework can also be used for Message queues. Thanks John also for replying so quickly to my questions I placed in Slack
By Hasan Ali on 5/14/2021
Thank you John. You did a good job. I was not very familiar with reactive staff and now I have a solid basis to work in spring reactive projects. I have another point, RobbitMQ part is not complete, maybe you forgot to upload all videos
By Michael Herb on 5/10/2021
I took the original course and honestly didn't get much out of it. This version just blows the original away. If you took the original, it is well worth your time to retake this course. Nice job John!
By Sudeep Jesani on 11/21/2020
I'm surprised that this course has so many positive reviews. It was a very basic course, with a bunch of disparate things thrown in to make 3.5 hours. You could get the same knowledge just by reading some spring docs.
By Yasir Mian on 11/7/2020
Full end to end WebFlux application with Spring Framework 5 would have been better.
By Abhishek Verma on 9/19/2020
Could have spent more time on the main tenets of the Reactive manifesto, I mean the fundamentals. A section devoted to Java streams API perhaps was not needed, perhaps more focus should have been on the basic semantics of Rx, spring-reactive. The reactive code unless explained with sufficient clarity could be tough to understand.
Quality Score
No CourseDuck member has rated this course yet. Taken it? Give each part a thumbs up or down.
Overall Score : 86 / 100












