Spring Data 2021.0 has been released by the Spring Data project team, shipping with new features, bugfixes, and improvements that contain numerous version and driver upgrades for the suite of data access tools for the Spring Framework for Java applications.
Codenamed Pascal, the Spring Data 2021.0 release is now available from the Apache Maven Central Repository. However, the Spring Data for Apache Solr module is no longer part of the Spring Data Release Train, following the announcement that development was to be discontinued last year.
According to the Spring Data team, the most significant changes include the introduction of the deleteAllById method for CrudRepository and ReactiveCrudRepository interfaces. Also added was QueryByExample for R2DBC and Oracle databases.
Spring Data 2021.0 enables type- and refactoring-safe use of KProperty and KPropertyPath for property path rendering, while this release also introduced the use of Spring Core JFR (Java Flight Recorder) metrics.
Another change is embedded document support and relaxed aggregation type checks for MongoDB, while prepared statements are now supported for Cassandra. Repository projections and function execution have been introduced in Spring Data for Apache Geode Repositories.
Also added in Spring Data 2021.0 is support for jMolecules, a project that aims to allow developers to express architectural concepts in Java code, using annotations and types.
The Spring Data team intends to publish a series of articles on the Spring Blog giving fuller details on all the new and noteworthy items in this release train in the near future.
The team also stated that it is now working towards the next service release, 2021.0.1, that will be included with Spring Boot 2.5 when it hits general availability in mid-May. The Spring Data developer team is also looking at the next release trains, with 2021.1 expected to consist mostly of dependency upgrades and a reduced set of new features. Looking further ahead, the team focus is now towards Spring Data 3.0, which will be in alignment with Spring Framework 6 and Spring Boot 3.0.