Using Spring Initializr for generating a Spring WebFlux project is really easy. But for us to get a handle on the various aspects of a WebFlux application, we will build aspect by ourselves. However, we will be using Spring Boot to run our application.
We will create a maven project, and will then add the following main dependencies (to make the code shorter, only important dependencies are shown in the following code) to our pom.xml:
<!--Spring Framework and Spring Boot-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-webflux</artifactId>
</dependency>
<!--JSON-->
<dependency>
…
</dependency>
<!--Logging-->
<dependency>
…
</dependency>
<!--Testing-->
<dependency>
…
</dependency>
We will include snapshot repositories for both the library and plugin dependencies. Finally, we will add the all-important maven plugin for our Spring Boot, as follows:
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>