Spring Boot
![]() | This article has multiple issues. Please help improve it or discuss these issues on the talk page. (Learn how and when to remove these messages)
|
![]() | |
Original author(s) | Rod Johnson |
---|---|
Developer(s) | VMware |
Initial release | April 2014 |
Stable release | 3.4.5[1] ![]() |
Repository | |
Written in | Java |
Platform | Java EE |
Type | Application framework |
License | Apache License 2.0 |
Website | spring![]() |
Spring Boot Extension is Spring's convention-over-configuration solution for creating production-grade[2] Spring applications with minimal amounts of configuration.[3] Most of the application can be preconfigured using Spring team's "opinionated view"[4][5] of the best configuration and use of the Spring platform and third-party libraries.
Features
- Embedded Tomcat, Jetty or UnderTow web application server [6]
- Provide opinionated 'starter' Project Object Models (POMs) for the build tool. The only build tools supported are Maven and Gradle.[7]
- Automatic configuration of the Spring Application [8]
- Provide production-ready[2] functionality such as metrics,[9] health checks [9] and externalized configuration[10]
- No code generation is required.[6]
- No XML configuration is required.[7]
Bootstrapping DispatcherServlet
Spring Boot does not require manual configuration of the DispatcherServlet
, since it automatically configures the application based on the configuration it detects.[11]
Spring Boot has a class SpringBootServletInitializer
, which is a specialization of the WebApplicationInitializer
.[11] This SpringBootServletInitializer
is an out-of-the-box implementation of WebApplicationInitializer
, which eliminates the need for the developer to construct their own implementation of the WebApplicationInitializer
class.[11]
Autoconfiguration
Spring boot has an annotation, @SpringBootApplication
, which allows the Spring Boot application to autoconfigure third-party libraries and detected features found on the classpath.[11] As an example, the class that has the @SpringBootApplication
annotation can extend the SpringBootServerInitializer
class if the application is packaged and deployed as a WAR file.[11]
Citations
- ^ "Release 3.4.5". 24 April 2025. Retrieved 1 May 2025.
- ^ a b Walls 2016, p. vii, §foreword.
- ^ Walls 2016, pp. 37–48, §2.3.
- ^ Walls 2016, p. 48, §2.4.
- ^ Deinum & Cosmina 2021, pp. 21–22, §2 Spring Framework Fundamentals.
- ^ a b Walls 2016, p. 7, §1.1.3.
- ^ a b Walls 2016, p. x, §Preface.
- ^ Walls 2016, pp. 4–5, §1.1.2.
- ^ a b Walls 2016, pp. 124–139, §7.
- ^ Walls 2016, pp. 49–69, §3.1-§3.2.3.
- ^ a b c d e Deinum & Cosmina 2021, pp. 52–54, §2 Spring Framework Fundamentals - Spring Boot.
References
- Deinum, Marten; Cosmina, Iuliana (2021). Pro Spring MVC with WebFlux. Berkeley, CA: Apress. doi:10.1007/978-1-4842-5666-4. ISBN 978-1-4842-5665-7.
- Walls, Craig (Jan 3, 2016). Spring Boot in Action. Manning. ISBN 978-1-61729-254-5.