Spring Boot, a tool for building production-grade applications that use the popular Spring Framework for Java development, is now in Version 2.0, four years after its first version shipped.
Version 2.0 adds support for Spring Framework 5.0, which was released in September with support for Java 9, JUnit 5, and the Kotlin language. Spring Boot favoring predefined conventions over developer configuration for rapid application development. Applications can be started using
java-jar or more traditional War (web application archive) deployments.
New features and enhancements in Spring Boot 2.0 include:
- Java 8 is required as a minimum version for running Spring Boot. APIs have been updated to use Java 8 features such as default methods on interfaces.
- Java 9 is supported.
- Reactive programming support is added via Spring WebFlux/WebFlux.fn.
- HTTP/2 capabilities are added for the Tomcat and Jetty servers.
- Simplified autoconfiguration is added for security.
- Support is added for the Quartz job scheduling library.
- Metrics are available based on Micrometer, which provides a façade over instrumentation clients for monitoring systems. Developers can instrument JVM application code without vendor lockin.
- Support is added for an embedded Netty server.
- Support is adedd for Kotlin 1.2, with the
runapplicationfunction providing a way to run a Spring Boot application via idiomatic Kotlin.