DEV Community

shantanu mahakale
shantanu mahakale

Posted on

Quick Recap: Spring Boot Versions

Spring Boot simplifies Java backend development by providing auto-configuration, embedded servers, production-ready features, and rapid development support. Here's a version-wise recap focusing on features that actually impact coding experience.


Spring Boot 1.x (2014)

  • First release of Spring Boot
  • Embedded Tomcat/Jetty β€” no external server needed
  • Auto-configuration (core feature introduced)
  • Spring Boot Starter dependencies (spring-boot-starter-web)
  • application.properties for configuration πŸ‘‰ Foundation for rapid development in Spring.

Spring Boot 2.x (Major Evolution)

Spring Boot 2.0

  • Based on Spring Framework 5
  • Reactive programming with WebFlux
  • Java 8+ required
  • Actuator redesigned with /actuator/* endpoints
  • Gradle plugin improved πŸ‘‰ Start of reactive and microservice-ready Spring.

Spring Boot 2.1

  • Better Kubernetes support
  • Enhanced Actuator metrics (Micrometer)
  • Lazy initialization support

Spring Boot 2.2

  • Java 11 support
  • Reactive health indicators
  • Startup time optimization

Spring Boot 2.3

  • Docker & Container support
  • Better Graceful Shutdown
  • Improved tests

Spring Boot 2.4

  • New config loading system
  • Better support for external configs
  • Removed bootstrap.properties for Spring Cloud

Spring Boot 2.5

  • Improved embedded server performance
  • Layered JARs for Docker image optimization
  • Easier startup tracking and metrics

Spring Boot 2.6 – 2.7

  • Deprecation of older patterns (MVC fallback)
  • Spring Native & AOT (Ahead-of-Time compilation)
  • Hints of moving toward Spring Boot 3 standards

πŸ‘‰ Spring Boot 2.x focused heavily on microservices, Docker, and reactive architectures.


Spring Boot 3.x (Current Stable Major)

  • Java 17 required (minimum)
  • Jakarta namespace migration (javax β†’ jakarta)
  • Built on Spring Framework 6
  • AOT & GraalVM Native Image support
  • Better performance & memory footprint
  • @HttpExchange & declarative HTTP clients
  • Enhanced observability (Micrometer + Actuator) πŸ‘‰ Major breaking change due to Jakarta migration.

Summary Table

Version Key Highlights
1.x Embedded server, auto-config
2.0 WebFlux, Java 8+, Actuator redesign
2.3 Docker support, health checks
2.4 New config loading
2.6–2.7 Native image hints, AOT prep
3.x Jakarta migration, Java 17+, HTTP client

What Should Developers Know Today?

Area Recommendation
New projects Use Spring Boot 3.x
Native/GraalVM Use Spring Boot 3.x with AOT
Legacy upgrades Move from 2.x β†’ 3.x (Jakarta migration)
Performance-focused apps Watch for Spring Boot 4 & Loom

Top comments (0)