This is the Beginning of the End of the N+1 Problem: Introducing Single Query Loading.

Engineering | Jens Schauder | August 31, 2023 | ...

TL;DR:

Starting with Spring Data JDBC 3.2.0-M2, Spring Data JDBC supports Single Query Loading. Single Query Loading loads arbitrary aggregates with a single select statement.

To enable Single Query Loading you need to call setSingleQueryLoadingEnabled(true) on your RelationalMappingContext.

In 3.2.0-M2, this works only for simple aggregates, consisting of an aggregate root and a single collection of other entities. It is also limited to the findAll, findById, and findAllByIds methods in CrudRepository. Future versions will improve on that. A final limitation is that the database you use has to support analytic functions (AKA window functions). All the officially supported databases except…

This Week in Spring - August 29th, 2023 - the post SpringOne recovery blog

Engineering | Josh Long | August 29, 2023 | ...

Hi, Spring fans! Welcome to another installment of This Week in Spring! I'm exhausted. Seriously. Last week was mental. If you need me, I'll be over sipping on a tea...

But, before that, there's a ton of things to cover from this last week, as always, and there's no rest for the curious, so let's get that out of the way first, shall we?

My SpringOne 2023 Recap

Engineering | Josh Long | August 29, 2023 | ...

Hi, Spring fans! Look, it's Monday after the first in-person SpringOne of the 2020s and the first since the pandemic, and, being honest, I'm bushed! Vegas is a dizzying, sensational, overwhelming, exciting experience, and SpringOne is too. But it was worth it. The SpringOne show surpassed all expectations, so it was definitely worth it.

This overwhelming scale was nowhere more evident than in the keynote, which was standing room only. I can't really recap the entire show, but I do want to talk about some of the huge themes you'd have seen addressed in the keynote.

During the keynote, the good…

Spring Data JDBC - How To Maintain Your Database Schema

Engineering | Jens Schauder | August 29, 2023 | ...

This is the fifth article of a series about how to tackle various challenges you might encounter when using Spring Data JDBC. The series consists of:

  1. Spring Data JDBC - How to use custom ID generation?

  2. Spring Data JDBC - How do I make bidirectional relationships?.

  3. Spring Data JDBC - How do I implement caching?

  4. Spring Data JDBC - How Can I Do a Partial Update of an Aggregate Root?

  5. Spring Data JDBC - How do I Generate the Schema for my Domain Model? (This article)

If you are new to Spring Data JDBC, you should start by reading its introduction and this article, which explains the relevance of aggregates in the context of Spring Data JDBC

Spring Boot 2.7.15 available now

Releases | Stéphane Nicoll | August 24, 2023 | ...

On behalf of the team and everyone who has contributed, I'm happy to announce that Spring Boot 2.7.15 has been released and is now available from Maven Central.

This release includes 45 bug fixes, documentation improvements, and dependency upgrades. Thanks to all those who have contributed with issue reports and pull requests.

How can you help?

If you're interested in helping out, check out the "ideal for contribution" tag in the issue repository. If you have general questions, please ask on stackoverflow.com using the spring-boot tag or chat with the community on Gitter.

Project Page | GitHub | Issues | Documentation | Stack Overflow |

Spring Boot 3.0.10 available now

Releases | Stéphane Nicoll | August 24, 2023 | ...

On behalf of the team and everyone who has contributed, I'm happy to announce that Spring Boot 3.0.10 has been released and is now available from Maven Central.

This release includes 76 bug fixes, documentation improvements, and dependency upgrades. Thanks to all those who have contributed with issue reports and pull requests.

How can you help?

If you're interested in helping out, check out the "ideal for contribution" tag in the issue repository. If you have general questions, please ask on stackoverflow.com using the spring-boot tag or chat with the community on Gitter.

Project Page | GitHub | Issues | Documentation | Stack Overflow |

Spring Boot 3.1.3 available now

Releases | Stéphane Nicoll | August 24, 2023 | ...

On behalf of the team and everyone who has contributed, I'm happy to announce that Spring Boot 3.1.3 has been released and is now available from Maven Central.

This release includes 82 bug fixes, documentation improvements, and dependency upgrades. Thanks to all those who have contributed with issue reports and pull requests.

How can you help?

If you're interested in helping out, check out the "ideal for contribution" tag in the issue repository. If you have general questions, please ask on stackoverflow.com using the spring-boot tag or chat with the community on Gitter.

Project Page | GitHub | Issues | Documentation | Stack Overflow |

Spring Batch 5.1.0-M2, 5.0.3 and 4.3.9 available now!

Releases | Mahmoud Ben Hassine | August 24, 2023 | ...

I am pleased to announce that Spring Batch 5.1.0-M2, 5.0.3 and 4.3.9 are available now! Versions 5.0.3 and 4.3.9 are patch releases that come with a number of bug fixes, improvements and dependencies updates. You can find the release notes of each version here: 5.0.3 and 4.3.9.

This blog post is mainly about the new milestone of Spring Batch 5.1, which introduces the following main features:

  • Dependencies upgrade
  • New cursor-based MongoItemReader
  • Bulk inserts support in MongoItemWriter

For the complete list of changes, please check the release notes.

Dependencies upgrade

This milestone release…

Get the Spring newsletter

Stay connected with the Spring newsletter

Subscribe

Get ahead

VMware offers training and certification to turbo-charge your progress.

Learn more

Get support

Tanzu Spring offers support and binaries for OpenJDK™, Spring, and Apache Tomcat® in one simple subscription.

Learn more

Upcoming events

Check out all the upcoming events in the Spring community.

View all