Book Image

Spring 5.0 Cookbook

By : Sherwin John C. Tragura
Book Image

Spring 5.0 Cookbook

By: Sherwin John C. Tragura

Overview of this book

The Spring framework has been the go-to framework for Java developers for quite some time. It enhances modularity, provides more readable code, and enables the developer to focus on developing the application while the underlying framework takes care of transaction APIs, remote APIs, JMX APIs, and JMS APIs. The upcoming version of the Spring Framework has a lot to offer, above and beyond the platform upgrade to Java 9, and this book will show you all you need to know to overcome common to advanced problems you might face. Each recipe will showcase some old and new issues and solutions, right from configuring Spring 5.0 container to testing its components. Most importantly, the book will highlight concurrent processes, asynchronous MVC and reactive programming using Reactor Core APIs. Aside from the core components, this book will also include integration of third-party technologies that are mostly needed in building enterprise applications. By the end of the book, the reader will not only be well versed with the essential concepts of Spring, but will also have mastered its latest features in a solution-oriented manner.
Table of Contents (20 chapters)
Title Page
Credits
About the Author
About the Reviewer
www.PacktPub.com
Customer Feedback
Preface

Integrating RxJava 2.0


From our conclusion that Spring 5 understands the full language of reactive programming, this recipe will show us that this Spring version does not only supports its built-in Reactor Core extension but can also extend its translation to RxJava 2.x.

Getting started

Add the following service methods and @Controller request handlers to ch08 which will also highlight RxJava 2.x stream transactions.

How to do it...

Aside from Reactor Core, Spring 5 can work with other reactive libraries, just like the popular RxJava 2.0. Follow these steps to guide on how to integrate RxJava 2.0 with Spring 5:

  1. Before we start, add the Maven dependencies of RxJava 2.x to pom.xml. This set of libraries has been used in the previous chapter.
  1. Open the DepartmentService class and add the following template methods that will soon be implemented as non-blocking transactions:
public interface DepartmentService { 
   // refer to sources 
   public Observable<Department> getDeptsRx(); 
   public Single...