Skip to content
O'Reilly home
Learning Path

Learning Path: Reactive Spring

Curator Ken Kousen

Spring and Spring Boot are frameworks that make it much easier for developers to create and deploy enterprise applications with far less toil and tedious set up work. So, it’s no surprise that more and more developers are using Spring as their go-to environment. Reactive Spring extends the framework’s capabilities even further by making it possible to create non-blocking, asynchronous applications and REST-based services via the Reactor Core library to provide your users with a more satisfying user experience.

In this learning path designed for developers with basic to intermediate Java skills, you’ll learn how to create reactive web applications using the Spring approach to development. You’ll explore the fundamentals that drive this powerful application framework. You’ll also examine the Reactive Streams specification, see how to write reactive applications using WebFlux, learn how to use a Kotlin implementation to streamline your code, and more. By the end of this learning path, you'll be able to build, test, and manage Spring applications that adhere to the reactive pattern and offer your users a richer experience with your enterprise web applications.

What you’ll learn—and how you can apply it

  • How to build reactive applications with WebFlux
  • How to use the WebClient class to access a RESTful service and return a Flux or a Mono
  • How to implement the Reactive Streams specification
  • How to use annotated controllers
  • How to build handlers and routers to configure reactive services
  • How to use a Kotlin implementation to simplify coding

This learning path is for you because…

  • You're a developer who wants to write web apps or REST-based services
  • You have a Java background (or other related language) and want to work with Spring
  • You're interested in the Spring ecosystem of projects


  • You should be familiar with using Spring and Spring Boot LP
  • You should be comfortable working with Java
  • Having some knowledge of web development would be helpful but is not required
  • A basic understanding of web development techniques using a Model-View-Controller framework would be beneficial
  • Having some knowledge of object-relational persistence (ORM) persistence mechanisms for relational databases, especially with tools like Hibernate, would be helpful

Materials or downloads needed in advance:

  • A GitHub repository containing the final form of the developed applications will be provided, but the applications will be built from the ground up

Further resources:

About the Publisher

O’Reilly’s mission is to change the world by sharing the knowledge of innovators. For over 40 years, we’ve inspired companies and individuals to do new things—and do things better—by providing them with the skills and understanding that’s necessary for success.

At the heart of our business is a unique network of experts and innovators who share their knowledge through us. O’Reilly online learning offers exclusive live training, interactive learning, a certification experience, books, videos, and more, making it easier for our customers to develop the expertise they need to get ahead. And our books have been heralded for decades as the definitive place to learn about the technologies that are shaping the future. Everything we do is to help professionals from a variety of fields learn best practices and discover emerging trends that will shape the future of the tech industry.

More about O'Reilly Media, Inc.