What this book covers
Chapter 1, Getting Started with Spring Boot, provides you with an overview of the important and useful Spring Boot starters that are included in the framework. You will learn how to use the http://spring.io/ resources, how to get started with a simple project, configure the build file to contain your desired starters, and finish by creating a simple command-line application configured to execute some scheduled tasks.
Chapter 2, Configuring Web Application, provides you with examples of how to create and add the custom ServletFilters, Interceptors, Converters, Formatters and PropertyEditors to a Spring Boot web application. It will start by creating a new web application and proceed to use it as a base to customize with the above mentioned components.
Chapter 3, Web Framework Behavior Tuning, delves into fine-tuning the behavior of a web application. It will cover configuring the custom routing rules and patterns, adding additional static asset paths, and adding and modifying the servlet container connectors and other properties such as enabling SSL.
Chapter 4, Writing Custom Spring Boot Starters, shows you how to create custom Spring Boot Starters in order to provide additional behaviors and functionalities that might be required for complex enterprise applications. You will learn about the inner workings of the autoconfiguration mechanics and how to use them to selectively enable/disable default functionalities and conditionally load your own.
Chapter 5, Application Testing, explores the different techniques to test Spring Boot applications. It starts by introducing you to the testing of MVC applications, then proceeds with some tips on how to use the in-memory database with prepopulated data in order to mimic the real DB interactions during tests, and concludes with examples of behavior-driven development via testing tools such as Cucumber and Spock.
Chapter 6, Application Packaging and Deployment, shows you how every written application needs to be deployed. You will see examples of configuring their build to produce Docker images and self-executing binary files for the Linux/OSX environments. It will explore the options to configure the external applications using Consul and delve into the details of the Spring Boot environment and configuration functionalities.
Chapter 7, Health Monitoring and Data Visualization, explores the various mechanisms that Spring Boot provides to help us see the data about our application's health. It will start by showing you how to write and expose the custom health metrics and see the data using the http endpoints and JMX. It will then proceed with the overview and creation of the management commands for CRaSH and finish with the integration of the monitoring data with Graphite and Dashing using the Codahale/Dropwizard Metrics framework.