Skip to content
O'Reilly home
Learning Path

Reactive Spring

Instructor Ken Kousen
Start
Time to complete: 1h 56m
Topics

Published byO'Reilly Media, Inc.

CreatedApril 2019

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

Prerequisites:

  • 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: