Spring boot is a module of spring framework which is used to create stand-alone, production-grade Spring based Applications with minimum programmer’s efforts. It is developed on top of core spring framework. The main concept behind spring boot is to avoid lot of boilerplate code and configuration to improve development, unit test etc. As in case of creating a new spring application, we have write many XML configurations, server setting, adding dependencies etc. These configuration files are one of the example of boilerplate code. Spring boot avoids all these boilerplate codes.
Boilerplate code: refers to the lots of code which programmer must write to do minimal jobs.
So, spring boot increase productivity by removing the boilerplate code and minimizing the programmer’s effort.
Spring boot advantages
- It helps to create stand-alone Spring applications
- Embed Tomcat, Jetty or Undertow directly (no need to deploy WAR files)
- It provide opinionated ‘starter’ POMs to simplify your Maven configuration
- Automatically configure Spring whenever possible
- It provide production-ready features such as metrics, health checks and externalized configuration
- Absolutely no code generationand no requirement for XML configuration