3.4.7

Latest release in branch 3.4
Released 4 months ago (June 19, 2025)

Software Spring Boot
Branch 3.4
End of OSS support December 31, 2025
End of commercial support December 31, 2026
First official release version 3.4.0
First official release date 11 months ago (November 21, 2024)
Supported
Java versions
Java 17+
Documentation https://docs.spring.io/spring-boot/docs/3.4.7/spring-boot-reference/

Spring Boot 3.4 Release Notes

Spring Boot 3.4.0, released on May 23, 2024, delivers a range of enhancements in HTTP client handling, JSON processing, GraphQL capabilities, and performance tuning. This version aligns with Spring Framework 6.1 and requires Java 17 or later, with support up to Java 23. It incorporates over 120 changes, including bug fixes for SSL, packaging, and testing, alongside major dependency upgrades for better ecosystem compatibility.

Spring Boot 3.4 focuses on refining developer tools, improving structured logging, and streamlining build processes for container images. It supports Jakarta EE 10 and reactive patterns, ideal for microservices, cloud deployments, and enterprise applications with seamless upgrades from prior releases.

New Features

Added withDefaultRequestConfigCustomizer method to HttpComponentsClientHttpRequestFactoryBuilder for easier HTTP client setup. JsonWriter now fails on duplicate names to ensure valid output. Introduced JsonObjectDeserializer.nullSafeValue with a Function mapper for secure deserialization.

GraphQL over Server-Sent Events gains timeout property support. HikariCP integration logs warnings for unconfigured pool suspension. Removed spring-boot-starter-aop from spring-boot-starter-data-jpa and spring-boot-starter-integration to trim dependencies.

Performance Improvements

ConfigurationPropertiesBinder optimizes by caching bind handlers on first use. ConcurrentReferenceCachingMetadataReaderFactory runs faster for metadata reads. These tweaks reduce overhead in configuration binding and caching scenarios.

Improvements

Fixed typos in structured logging class names. StructuredLoggingJsonProperties customizer now uses Class references over Strings. Documentation updates include full Javadoc links, clarified spring.datasource.type, and reworked DataSource examples.

Added details on GraalVM config files, layers schema in Maven examples, and Eclipse setup links. Corrected build-info for seconds since epoch from project.build.outputTimestamp.

Bug Fixes

Jersey body handling now consistent with Spring WebFlux and MVC. OCI image packaging fixed for docker.io/paketobuildpacks/new-relic buildpack. WebServerPortFileWriter handles extensionless portfiles.

SslOptions.isSpecified returns true only for set ciphers and protocols. SslHealthIndicator avoids NullPointerException with SslStoreBundle.NONE. Added cipher and protocol support to JdkClientHttpRequestFactoryBuilder and JettyClientHttpRequestFactoryBuilder.

Exposed root causes in image loading errors from archives. mvn spring-boot:run works on Windows with non-ASCII paths. Fixed HttpHostConnectException in buildpacks on Windows.

@SpyBean resets properly from FactoryBean output. Removed duplicate MockResolver warnings. Logback processes URLs without .xml endings. Bean conditions respect factory beans.

Default WebSocketMessageBrokerConfigurer avoids overriding custom executors. Docker API X-Registry-Auth header omits authHeader field. ApplicationContextRunner handles duplicate auto-config names consistently.

Dependency Upgrades

Dependency Version
ActiveMQ6.1.4
Byte Buddy1.15.10
Couchbase Client3.7.5
Elasticsearch Client8.15.4
Flyway10.20.1
Groovy4.0.24
Hibernate6.6.2.Final
HttpClient55.4.1
Infinispan15.0.11.Final
Jackson BOM2.18.1
Jetty12.0.15
jOOQ3.19.15
Kafka3.8.1
Lettuce6.4.1.RELEASE
Logback1.5.12
Lombok1.18.36
Maven Dependency Plugin3.8.1
Maven Failsafe Plugin3.5.2
Maven Surefire Plugin3.5.2
Micrometer1.14.1
Micrometer Tracing1.4.0
MongoDB5.2.1
Netty4.1.115.Final
Prometheus Client1.3.3
Pulsar Reactive0.5.9
Reactor BOM2024.0.0
Spring AMQP3.2.0
Spring Authorization Server1.4.0
Spring Batch5.2.0
Spring Data BOM2024.1.0
Spring Framework6.1.0
Spring HATEOAS2.1.0
Spring Integration6.2.0
Spring Kafka3.2.0
Spring LDAP3.2.8
Spring Pulsar1.1.0
Spring RESTDocs3.0.3
Spring Security6.3.1
Spring Session3.3.0
Testcontainers1.19.4
Tomcat10.1.20
Undertow2.3.15.Final
WebJars Locator Lite1.0.1

Deprecations

No major deprecations introduced in this release. Focus remains on cleaning up transitive dependencies like spring-boot-starter-aop.

Removals

Removed spring-boot-starter-aop dependency from spring-boot-starter-data-jpa and spring-boot-starter-integration to avoid unnecessary AOP features in those starters.

Migration and Support

Upgrading from 3.3 uses mvn spring-boot:run --spring-boot.upgrade or gradle bootUpgrade for automated dependency and config updates. Test for new JSON behaviors and SSL changes.

Spring Boot 3.4 follows the quarterly cadence, with full support until May 2025 and security patches to November 2026. Review release notes for detailed changelogs and migration guides.

Releases In Branch 3.4

Version Release date
3.4.7 4 months ago
(June 19, 2025)
3.4.6 5 months ago
(May 22, 2025)
3.4.5 6 months ago
(April 24, 2025)
3.4.4 7 months ago
(March 21, 2025)
3.4.3 8 months ago
(February 20, 2025)
3.4.2 9 months ago
(January 23, 2025)
3.4.1 10 months ago
(December 19, 2024)
3.4.0 11 months ago
(November 21, 2024)