📗 Links
⭐ New Features
- Add support for returning
Streamablefrom AOT repository methods #2175 - Introduce
JdbcConfigurationand extract factory methods used fromAbstractJdbcConfiguration#2166 - Introduce
JdbcConfigurationand extract factory methods used fromAbstractJdbcConfiguration#2165 - Add H2 Dialect fallback to
JdbcRepositoryRegistrationAotProcessor#2152 - Add
@CheckReturnValuetoQueryandUpdateAPI #2145 - Migrate to JSpecify annotations for nullability constraints #2126
- Add Ahead of Time Repository support #2124
- Add support for Ahead of Time Repositories #2121
- Do not expose
IdOnlyAggregateReferencepublicly #2106 - Propagated the SqlType to the parameter source during Spel ex… #2079
- Allow Table and Column name expressions to return SqlIdentifier #2077
- Refine dependency lookup in
JdbcRepositoryFactoryBean.afterPropertiesSet()#2070 - Use quoted identifiers by default using R2DBC #2066
- Implement
RepositoryFactorySupport.getEntityInformation(RepositoryMetadata)instead of private overload #2053 - breaking change for
@Lockon String methods #2023 - Support Composite ID in R2DBC #2012
- Support embedded entities in Spring Data R2DBC #2011
- Incorrect MapParameterSource construction in
@Querymethods with SPEL #2007 - Unified RowMapper infrastructure #2000
- Allow for the extension of the JdbcQueryLookupStrategy #1998
- Use force-quoting in
R2dbcMappingContextby default #1993 - Migrate to JSpecify annotations for nullability constraints #1980
- Add support for composite ids #1957
- Remove DbActionExecutionException #1956
- Adopt to deprecation removals in Commons #1944
- Include QueryMappingConfiguration for all part tree queries #1893
- Add
jdbcAggregateOperationsRefto@EnableJdbcRepositories#1704 - Allow Table and Column name expressions to return
SqlIdentifier#1524 - Custom RowMapper through bean definition not registering #1006
- Add
jdbcAggregateOperationsRefto@EnableJdbcRepositories#687 - Support for Composite Keys using
@Embededand@Id#574 - Move
PropertyPathandTypeInformationtypes tocorepackage #3393 - Refine AOT Repositories infrastructure #3267
🐞 Bug Fixes
AotRepositoryCreatorfails withConverterNotFoundExceptionfor derived queries using converters #2174StatementFactorydoes not consider schema #2162- Deprecate methods accepting
QueryandPageablereturningPage#2161 ClassNotFoundExceptionis thrown when loadingJdbcSqlServerDialect#2153- Extraneous warnings related to
JdbcSqlServerDialect#2147 - Inconsistent pagination API design using
JdbcAggregateTemplate.findAll(Query, Pageable)#2138 JdbcRepositoryConfigExtensiondoes not report repository base class name #2137- Support Composite IDs in R2DBC #2114
- Misleading
AggregateReference.getId()@Nullableannotation #2104 - JDBC's Query by Example doesn't consider the projection type via
.project()#2098 - Spring Data Jdbc: instability in custom reading/writing converter appliance #2083
- Handle custom conversions for collections #2081
- Custom converters not working for collecton-like properties #2078
- Fixing Typo in JdbcAggregateChangeExecutionContext Exception Message #2074
- Fixing Typo in SqlSort Exception Message #2073
- GH-2064 BeforeConvertCallback should be applied after the RootAggrega… #2065
- spring data jdbc: saveAll on null id's entities calls update statement #2064
- Supported nested conversions for AggregateReference #2062
- JdbcAggregateTemplate honors columns specified in query #1967
- AggregateReference with custom datatypes can not be converted to simple type #1828
JdbcAggregateOperationsdoes not use columns parameter ofQuery#1803- save() method is raising a DbActionExecutionException on unique key violation [DATAJDBC-611] #831
📔 Documentation
- Fix PostgreSQL dependency coordinates in reference documentation #2163
- cosmetic doc improvements for jdbc component #2148
- Fix typos in DbAction class documentation #2080
- Clarify the
@Lockon String-based queries #2008 - Document placeholder and Ant-style pattern support for
@Enable…Repositories#3366 - Refine version properties for documentation build #2638
🔨 Dependency Upgrades
- Upgrade to jMolecules 2025.0.0 BOM #2177
- Upgrade to R2DBC Postgresql 1.1.1.RELEASE #2171
- Upgrade to Archunit 1.4.1 #2169
- Upgrade test driver dependencies #2168
- Explicitly declare jMolecules DDD dependency #2156
- Upgrade to R2DBC Postgresql 1.1.0.RELEASE #2151
- Upgrade to R2DBC SQL Server 1.0.3.RELEASE #2131
- Upgrade JDBC drivers #2105
- Upgrade to Netty 4.2.3.Final #2097
- Upgrade to Maven Wrapper 3.9.11 #2089
- Upgrade to Netty 4.2.2.Final #2086
- Upgrade JDBC and R2DBC drivers #2085
- Upgrade to Testcontainers 2.0 #2688
❤️ Contributors
We'd like to thank all the contributors who worked on this release!