Spring Batch 4.3.0-M1 is released now!

On behalf of the Spring Batch team, I am pleased to announce that Spring Batch 4.3.0-M1 is now available from our milestone repository.

What’s new?

This release is packed with new features, performance improvements, and bug fixes, as well as documentation and dependency updates! You can find the complete list of changes in the release notes, but here are the major highlights:

New features

1. New synchronized ItemStreamWriter

Similar to the SynchronizedItemStreamReader, we added a SynchronizedItemStreamWriter. This feature is useful in multi-threaded steps where concurrent threads need to be synchronized to not override each other’s writes.

Read more

First milestone of Spring Data 2020.0 available

On behalf of the Spring Data team, I’m happy to announce the first milestone of the 2020.0 (Code name “Ockham”) release train, 2020.0.0-M1. This release ships with over 120 tickets fixed. This Spring Data release is the first release using calver as an update to the release train version scheme.

The most notable new features are:

  • Support for RxJava 3
  • Introduction of, which replaces

You can find a curated changelog in our release train wiki or skim through a full list of changes in JIRA.

Read more

First Spring Framework 5.3 milestone released

Dear Spring community,

On behalf of the team and everyone who contributed, it is my pleasure to announce that Spring Framework 5.3 M1 is available from our milestone repository now! Find an initial list of new features and refinements and corresponding upgrade notes including several deprecations on our wiki.

Please note that 5.3 is designed as the final 5.x feature release, wrapping up the major themes in the Spring Framework 5 generation, in particular reactive programming and Kotlin support, while also taking GraalVM compatibility to the next level. Last but not least, we are not only preparing for JDK 15 and 16 but also for next year’s JDK 17 LTS already, expecting an extended 5.3.x maintenance life.

Read more

This Week in Spring - June 23, 2020

Hi, Spring fans! What a week it’s been! Tomorrow I’ll be presenting a webinar on the easy integration between Spring Boot and Tanzu Wavefront. Wavefront is an all-in-one, integrated distributed tracing metrics analytics observability platform. Join us tomorrow to learn about observability, about Wavefront, and their integration in the Spring ecosystem with Spring Cloud Sleuth and Micrometer, among other things.

We’ve so many great things to look at this week so let’s get to it!

Read more

Spring Tools 4.7.0 released

Dear Spring Community,

I am happy to announce the 4.7.0 release of the Spring Tools 4 for Eclipse, Visual Studio Code, and Theia.

Highlights from this release include:

  • (Spring Boot) bugfix: automatic live hover detection works again reliably
  • (Eclipse) update: Spring Tools 4 for Eclipse distribution updated to Eclipse 2020-06 release
  • (Eclipse) improvement: added support for multiple instances of symbols view
  • (Eclipse) improvement: added favorites dropdown to symbols view
  • (Eclipse) improvement: boot dashboard shows request mappings, beans, and the environment of running apps now if SSH tunnel is enabled for the app on CF
  • (Eclipse) update: Support SemVer format in Spring Initializr wizard (#473)
  • (Eclipse) bugfix: STS 4.6.2 and Eclipse 2020-06 RC1: FrameworkEvent ERROR (#477)
  • (Eclipse) bugfix: select manifest action for cf apps in boot dashboard doesn’t show SSH option anymore
  • (VSCode) improvement: Flag to configure the “JAVA_HOME or PATH…” message display (#478)
  • (VSCode) bugfix: green live hovers markers are no longer gone after switching to a different editor
Read more

What's new in Spring Boot 2.3

Speaker: Phil Webb (@phillip_webb)


Use the timecodes below if you want to jump to a specific part of the presentation:

  • 00:27 - Intro
  • 01:59 - Creating the Demo
  • 04:01 - Building Docker Images with the Spring Boot Plugin
  • 09:21 - Building Docker Images with a Dockerfile
  • 16:40 - Customizing Layers
  • 21:38 - Graceful Shutdown
  • 25:19 - Kubernetes Probes
  • 30:55 - Configuration Properties End-to-End Traceability
  • 33:00 - Wrap-up and Upgrade Gotchas


The following links are referenced in the presentation:

Read more

Getting Started With RSocket: Spring Security

Reading time: about 6 minutes
Coding time: about 20 minutes

If you’ve been following my series on RSocket, you’ve already learned how to build client-server applications with Spring Boot. In today’s exercise, you’re going to learn how to add security to your RSocket applications.

The task of securing RSocket applications is greatly simplified when you use Spring Security. Spring Security is a must-have module for any production application. It allows you to easily plugin many different authentication providers and restricts each user’s access to your application based on their identity and their role.

Read more

Spring Tips: Spring and GraalVM (pt. 2)

speaker: Josh Long (@starbuxman)

Hi Spring fans! Welcome to a very special, interregnum episode of Spring Tips where we revisit Spring and GraalVM native images. I wanted to get this video out in light of the recent Spring Graal 0.7.1 release which drastically simplifies things even compared to the last time we looked at Spring and Graal waaay back in April 2020.

TL;DR: GraalVm is a JIT replacement that you can use with a stock-standard JVM, and that’s worth looking into in its own right. GraalVM also offers a separate feature supporting native image compilation. This native-image builder takes bytecode and turns it into an architecture-specific binary that sheds the JVM and embeds something called SubstrateVM. Native images are fast to startup and they take way less memory at runtime. These qualities make it desirable in a containerized, cloud-centric environment.

Read more