What's New in Spring Boot 3
Spring Boot 3 ships with Java 17 baseline, native AOT compilation, and major security upgrades. Here's everything you need to know before migrating.
What's New in Spring Boot 3
Spring Boot 3 is the most significant release in years. Here's what changed and why it matters.
Java 17 baseline
Spring Boot 3 drops support for Java 8 and 11. The minimum is now Java 17, which means records, sealed classes, and text blocks are first-class citizens throughout your application.
GraalVM Native Image support
For the first time, Spring Boot applications can be compiled to a native binary using GraalVM. The result: startup in milliseconds and drastically lower memory usage — ideal for serverless and container workloads.
./mvnw -Pnative native:compile
java -jar target/myapp # starts in < 100ms
Observability with Micrometer Tracing
Spring Boot 3 ships Micrometer Tracing as a first-class citizen. Distributed traces flow automatically through RestClient, WebClient, and Spring MVC.
management:
tracing:
sampling:
probability: 1.0
zipkin:
tracing:
endpoint: http://localhost:9411/api/v2/spans
New RestClient (replaces RestTemplate)
RestClient client = RestClient.create("http://api.example.com");
String body = client.get()
.uri("/users/{id}", 1)
.retrieve()
.body(String.class);
Migrating from Spring Boot 2
The main breaking changes:
javax.*→jakarta.*package rename (most significant change)- Spring Security's
WebSecurityConfigurerAdapteris removed — useSecurityFilterChainbeans instead spring.redis.*properties renamed tospring.data.redis.*
Related Posts
MongoDB with Spring Data: A Practical Guide
Skip the boilerplate. Learn how Spring Data MongoDB turns your domain classes into a fully-functional persistence layer in minutes.
Java 21: The Features That Matter for Backend Engineers
Virtual threads, record patterns, sequenced collections — Java 21 is a landmark LTS release. Here's what to adopt now and what to watch for in interviews.