Hi, Spring fans! Welcome to another installment of This Month in Spring! It’s the week before Thanksgiving and I’ve got some feelings. First: Spring boot 3.4 came out and its amazing! (more on that later). Second: Happy Thanksgiving to those of you who celebrate! This time of year we Americans are meant to take stock in that for which we’re thankful and make no mistake, my friends, I am super grateful for you!
Now then, about that Spring Boot 3.4 release. Remember: Spring projects leave open-source support after a year. So, roughly, when Spring Boot 3.4.0 drops, Spring Boot 3.2.0 and earlier versions won’t be supported anymore. If you want to know where you stand, check the support windows on the various projects’ pages.
- Spring Framework 6.2.0 available now! This foundational piece kicks off our release cycle for the season. Remember: we do new releases of Spring Framework and Spring Boot every six months! Spring Framework 6.2 brings new baseline dependencies, removed APIs, tweaked
Priority
behavior in the core container, deeper generic type matching,@Fallback
beans, SpEL updates, smarter resource loading in web applications, messaging updates for JMS message listener containers, improved testing support, support for escaping property placeholder expressions, a new background initialization mode for individual beans, enhanced indexing support in SpEL, bean overriding in tests with@TestBean
,@MockitoBean
, and@MockitoSpyBean
, AssertJ with MockMvc, dynamic property registration in a test’sApplicationContext
, constructor data binding to lists, maps, and arrays, data binding from headers, fragment rendering, content negotiation for@ExceptionHandler
methods, URL parsing,UrlHandlerFilter
for trailing slash match, easier reflection hint registration for native applications, and much more! It’s jam-packed with good stuff so check it out! - Spring Security 6.4.0 has gone GA! It includes new features including passkeys, one-time tokens, simplified OAuth configuration, refreshable SAML 2.0 parties, and new method security annotations and capabilities.
- Spring LDAP 2.4.4 and 3.2.8 are now available
- Spring Security 6.2.8 and 6.3.5 are now available
- Spring Framework 6.1.15 available now
- Spring Framework 6.2.0 available now
- In last week’s installment of A Bootiful Podcast, I talk to engineer, CTO, teacher, and pilot Ken Sipe
- Spring Framework CVE-2024-38828
- Spring Data 2024.1 goes GA
- Spring Data 2024.0.6 and 2023.1.12 released
- Spring for Apache Pulsar 1.2.0 is now available
- Spring for Apache Pulsar 1.0.12 and 1.1.6 available now
- I love this GitHub resource linking to curated resources on event-driven architecture
- I love this video: Spring Boot testing: Zero to Hero by Daniel Garnier-Moiroux
- New from Spring team member Sam Brannen: a wiki page on date and time formatting with JDK 20 and higher
- I love this from Cornelia Davis, a former Pivot and former CTO at Weaveworks and an all-around legend that looks at Spring Boot and Temporal
- Not related to Spring, per se, but super interesting: Netflix’s distributed counter abstraction. Sometimes it’s hard to believe the level of sophistication in something as simple as a monotonically incrementing number, at scale.
- Nice blog on using Google Cloud’s Vision support with Spring Boot
- Micrometer 1.13.7 is here!
- My friend Dashaun and I did this video reacting to “How we fell out of love with Java”
- Dr. David Syer announcing the Spring GRPC project
- a Spring Boot and GraalVM native image application, demonstrated by awesome Oracle GraalVM developer advocate Alina Yurenko
- understanding the Spring Boot
@SpringBootApplication
annotation - understanding the lifecycle of a Spring Boot application
- there’s never been a better time to be a Java and Spring developer!
- A New Developer’s Journey, in 2024
- Super cool! Java 24 is targeting a fix to allow developers to synchronize code on virtual threads and avoid pinning
- Spring Cloud 2024.0.0-RC1 (aka Moorgate) has been released
- In this installment of A Bootiful Podcast, I talk to Gradle developer advocate Baruch Sadogursky
- good news everybody! GraalVM will now support
jcmd
, which allows you to bring diagnostics and monitoring of native images even closer to the Hotspot experience. JFR, heap dumps, thread dumps, JMX, and NMT are already available! - Modern Java is amazing
- I’ll be speaking at VOXXED Days Amsterdam next year. Will you be there?
- this French language post on how to integrate Langchain4J with Spring is pretty amazing
- the latest Pkl release supports Spring Boot 3!
- three ways to fake OAuth 2 single sign on in a Spring application
- Data legend Gwen Shapira has a nice video on how to get started with
pgvector
, the module for vector stores in PostgreSQL - Spring AI has natiuve support for Kotlin! Nice!
- JEP 483, landing in Java 24, introduces AOT class loading and linking
- also coming in Java 24: synchronize virtual threads without pinning
RestClient
support for OAuth 2 in Spring Security 6.4- Spring Modulith 1.3 RC1, 1.2.5, and 1.1.10 released. The RC has several cool new contributions, including one from my friend and teammate Cora Iberkleid introducing an archiving event publication completionm mode; and one contribution from me, that supports externalizing events with Spring Integration
MessageChannel
s. Nice! Get the bits now! - An awesome blog from Marcin Grzejszczak: Let’s Use OpenTelemetry with Spring
- Spring Boot 3.4.0 RC1 is available now
- in last week’s A Bootiful Podcast, I talked to GraalVM benevolent dictator for life and founder Thomas Wuerthinger
- Spring Integration 6.4 RC1
- Spring Boot 3.3.5 available
- Spring Framework 6.2.0 RC3 available now
- Spring Boot 3.2.11 available now
- Spring Batch 5.2.0 RC1 is out
- Spring Authorization Server 1.4.0 RC1, 1.3.3, and 1.2.7 now available
- Spring for GraphQL 1.2.9 and 1.3.3 released
- Spring AMQP 3.2 RC1 available
- Spring for Apache Kafka 3.3.0 RC1 released
- I love this incredibly comprehensive list of cool people in the Java ecoststem
- this is an interesting Portuguese-language video on creating a To-Do list in Spring Boot
- Have you seen the new CRON expressions support in Spring Tools 4?
- Spring AI continues its Anthropic integration with support for the newly released Claude 3.5 Sonnet model upgrade
- A nice blog by Karanbir Singh on using Spring Boot AWS Roles Anywhere
- Hey! Readers of Java Magazine (NL), check out Oracle GraalVM developer advocate Alina Yurenko’s new article looking at the amazing opportunity in using Spring and GraalVM together
- Did you see the latest Spring Boot 3.3.5 release has an incredible optimization for scalability in R2DBC (and, for the moment, PostgreSQL)?
- A recap for those who need it: Aggregate Design Rules according to Vaughn Vernon