org.springframework.data:spring-data-jpa
4.1.1
#912 most downloaded on Maven Central
spring-projects/spring-data-jpa
What this package is like to depend on
Last release 4 days ago
20 Aug 2026
Ships fairly regularly
a new release about every 4 weeks
Rarely documented
notes for 8 of 291 stable releases
Nothing withdrawn
no release was ever pulled
15 years old
304 releases · first in 2011
31 releases in the last 12 months
see the full history below
Release timeline
304 releases · Jul 2011 to Aug 2026Releases
latest 60 of 304-
4.2.0-M120 Aug 2026 pre-releaseRelease notes
Open source →📗 Links
⭐ New Features
- Reject missing explicitly named queries #4293
🐞 Bug Fixes
- Allow
REGEXPmodifier in HQLLIKEpredicates #4295 - Allow KEY and VALUE in JPQL/EQL collection membership predicates #4292
- Fix parsing of single-character string literals in JPQL and EQL collection member expressions #4282
- JPQL and EQL fail to parse a single-character string literal as the left operand of
MEMBER OF#4278 - Fix
IS NULLrendering of keyset queries using Querydsl #4275
🔨 Dependency Upgrades
- Upgrade to Oracle JDBC Driver 23.26.3.0.0 #4316
- Upgrade to MySql JDBC Driver 26.7.0 #4315
- Upgrade to Postgres JDBC Driver 42.7.13 #4314
- Upgrade to Eclipselink 5.0.1 #4313
- Upgrade to Hibernate 7.4.5.Final #4312
❤️ Contributors
We'd like to thank all the contributors who worked on this release!
-
4.1.120 Aug 2026Release notes
Open source →📗 Links
🐞 Bug Fixes
- Allow
REGEXPmodifier in HQLLIKEpredicates #4295 - Allow KEY and VALUE in JPQL/EQL collection membership predicates #4292
- Fix parsing of single-character string literals in JPQL and EQL collection member expressions #4282
- JPQL and EQL fail to parse a single-character string literal as the left operand of
MEMBER OF#4278 - Fix
IS NULLrendering of keyset queries using Querydsl #4275
🔨 Dependency Upgrades
- Upgrade to Oracle JDBC Driver 23.26.3.0.0 #4320
- Upgrade to Postgres JDBC Driver 42.7.13 #4319
- Upgrade to Eclipselink 5.0.1 #4318
- Upgrade to Hibernate 7.4.5.Final #4317
❤️ Contributors
We'd like to thank all the contributors who worked on this release!
- Allow
-
4.1.009 Jun 2026Release notes
Open source →📗 Links
⭐ New Features
- Interface projection from JPQL Multi-SELECT throws
ConversionFailedException#4251 - Consider unsafe
JpaSortin Querydsl sorting #4211 - Querydsl sorting should support arbitrary String expressions #4209
- Make ELSE optional in CASE expressions #4150
- Make
ELSEoptional inCASEexpressions #4142 - Propagate well-known property JPA names to AOT metamodel initialization #4106
- Add sequence support for AOT dialect #4103
- Defer
ReturnedType.inputPropertiesaccess #4088 - Introduce
Expressionsutility for type-safe Criteria Query Expression resolution #4086 - Add utility for type-safe Criteria Query expression resolution #4085
🐞 Bug Fixes
- Fix JPQL, EQL, and HQL query rendering round-trips #4273
- JPQL and EQL renderers fail using
TREAT,LOCATE, and subqueries from collection members #4272 - Fix
EXTRACT(TIME FROM ...)inJpaSortorder expressions #4255 - Detect
COUNT(*)function alias inQueryUtils#4249 COUNT(*) AS aliasis not detected byQueryUtils FUNCTION_PATTERN#4242- Do not use tuple-typed queries for derived count queries. #4235
- Enhance type filter to cover
java.sqlpackage #4231 - Page with interface projection on derived query fails with
ConverterNotFoundException#4230 - Ahead-of-Time optimizations fail when a Hibernate entity uses
java.sql.Clob#4228 SimpleJpaRepository.existsById(…)returnsfalsewhen multiple rows exist for the same ID #4227- AOT-generated repositories convert array binding values to
List#4223 - Stub insert and mutation strategies for AOT Dialect in
AotMetamodel#4208 - AOT processing fails with
IDENTITYidentifier generation #4207 - Refine JPQL join aliasing #4182
- Simple property predicate fails on plural paths that are only allowed for the 'member of' operator #4179
- Input properties order not preserved when specified via Fetchable Fluent Query #4174
- Input Properties discarded using DTO Projection through
findBy(…)#4172 - Positional parameter numbering has gaps when previous query parameters are represented with
IS NULL#4171 - JPQL aliasing using
idbreaks EclipseLink queries #4167 - Prevent schema interaction during AOT repository creation #4159
- Fix keyset pagination with hierarchical idclass #4156
- Apply LockModeType when creating AOT queries #4153
- Lock is not taking into account when generating aotSources #4152
- Use named selection for projections to avoid AliasCollisionException caused by the same leaf property name #4136
- Interface projection fails with AliasCollisionException using the same leaf property name #4135
- Makes Nullability of findAll consistent #4132
- Inconsistent
Specificationnullness declarations inSimpleJpaRepositoryandJpaSpecificationExecutor#4131 - AOT processing fails when using
hibernate.hbm2ddl.auto=update#4130 - Reference collection via join in JPQL #4123
NullPointerExceptioninQuery.setParameter(…)bindingnulltoINparameters #4112- Predicates on plural paths operate on collection instead of joins #4110
- AOT repositories use
executeUpdatefor derived@Modifyingqueries #4102 - Apply fetch graph by name in AOT repositories. #4100
- SpringDataJpaAotDialect must not return null for getSqlAstTranslatorFactory() #4098
- Named
@EntityGraphnot applied to AOT repository query methods #4097 - AOT repositories fail with
IncorrectResultSizeDataAccessExceptionrunningGROUP BYcount query #4096 - AOT-generated repository fragment does not convert collection result to
Set#4094 - Derived query fails with
InvalidDataAccessApiUsageExceptionusingIgnoreCasefor nested property #4087 JpaSpecificationExecutor.findBy(…)returns join product of nested relations #3908- NullPointerException when using composite id with 'exists' repository method [DATAJPA-1290] #1616
📔 Documentation
- Remove duplicate Query by Example collection-property note #4270
- Document fetch behavior for streaming query results #4262
- Fix typos #4210
- Add
core-conceptslink #4194 - Fix typos in test Javadoc #4193
- Fix a/an in Javadoc #4154
- Fix grammar in projections documentation #4122
- Improve clarity and accuracy of Example 7 and 11 titles #4120
- Remove duplicate documentation heading identifiers #4084
- Misleading links in repositories reference documentation overview #3463
- Document projection support for
JPASpecificationExecutor#2499 - Improve documentation to clearly state that Query By Example ignores collections [DATAJPA-1127] #1472
- Add note about driver behaviour for streaming query results [DATAJPA-1007] #1346
- Refine Antora-build #2797
- Add Readme templates #2758
🔨 Dependency Upgrades
- Upgrade to Maven Wrapper 3.9.16 #4267
- Upgrade to Postgres JDBC Driver 42.7.11 #4261
- Upgrade to Hibernate 7.4 #4260
- Update to Hibernate 7.2.11.Final #4238
- Upgrade to Hibernate 7.2.10.Final #4234
- Upgrade to MySQL 8.0.45 Docker image #4229
- Update to Hibernate 7.3.X #4224
- Upgrade to MySql JDBC Driver 9.6.0 #4222
- Upgrade to Eclipselink 5.0.0 #4221
- Upgrade to Hibernate 7.2.7.Final #4220
- Upgrade to Eclipselink 5.0.0-RC1 #4213
- Upgrade to Postgres JDBC Driver 42.7.10 #4206
- Upgrade to Postgres JDBC Driver 42.7.9 #4186
- Upgrade to Hibernate 7.2.4.Final #4181
- Upgrade to Hibernate 7.2.2.Final #4176
- Upgrade to Hibernate 7.2.1.Final #4160
- Upgrade to Hibernate 7.2.0.Final #4121
- Upgrade to Eclipselink 5.0.0-B13 #4117
❤️ Contributors
We'd like to thank all the contributors who worked on this release!
- Interface projection from JPQL Multi-SELECT throws
-
4.1.0-RC117 Apr 2026 pre-releaseRelease notes
Open source →📗 Links
⭐ New Features
- Consider unsafe
JpaSortin Querydsl sorting #4211 - Querydsl sorting should support arbitrary String expressions #4209
- Add utility for type-safe Criteria Query expression resolution #4085
🐞 Bug Fixes
- Do not use tuple-typed queries for derived count queries. #4235
- Enhance type filter to cover
java.sqlpackage #4231 - Page with interface projection on derived query fails with
ConverterNotFoundException#4230 - Ahead-of-Time optimizations fail when a Hibernate entity uses
java.sql.Clob#4228 SimpleJpaRepository.existsById(…)returnsfalsewhen multiple rows exist for the same ID #4227- AOT-generated repositories convert array binding values to
List#4223 - Fix keyset pagination with hierarchical idclass #4156
🔨 Dependency Upgrades
- Update to Hibernate 7.2.11.Final #4238
- Upgrade to Hibernate 7.2.10.Final #4234
- Upgrade to MySQL 8.0.45 Docker image #4229
- Upgrade to MySql JDBC Driver 9.6.0 #4222
- Upgrade to Eclipselink 5.0.0 #4221
- Upgrade to Hibernate 7.2.7.Final #4220
❤️ Contributors
We'd like to thank all the contributors who worked on this release!
- Consider unsafe
-
4.1.0-M213 Mar 2026 pre-releaseNothing published for this version
-
4.1.0-M113 Feb 2026 pre-releaseNothing published for this version
-
4.0.720 Aug 2026Release notes
Open source →📗 Links
🐞 Bug Fixes
- Allow
REGEXPmodifier in HQLLIKEpredicates #4295 - Allow KEY and VALUE in JPQL/EQL collection membership predicates #4292
- Fix parsing of single-character string literals in JPQL and EQL collection member expressions #4282
- JPQL and EQL fail to parse a single-character string literal as the left operand of
MEMBER OF#4278 - Fix
IS NULLrendering of keyset queries using Querydsl #4275
🔨 Dependency Upgrades
- Upgrade to Oracle JDBC Driver 23.26.3.0.0 #4324
- Upgrade to Postgres JDBC Driver 42.7.13 #4323
- Upgrade to Eclipselink 5.0.1 #4322
- Upgrade to Hibernate 7.2.24.Final #4321
❤️ Contributors
We'd like to thank all the contributors who worked on this release!
- Allow
-
4.0.609 Jun 2026Release notes
Open source →📗 Links
⭐ New Features
- Interface projection from JPQL Multi-SELECT throws
ConversionFailedException#4251
🐞 Bug Fixes
- Fix JPQL, EQL, and HQL query rendering round-trips #4273
- JPQL and EQL renderers fail using
TREAT,LOCATE, and subqueries from collection members #4272 - Fix
EXTRACT(TIME FROM ...)inJpaSortorder expressions #4255 - Detect
COUNT(*)function alias inQueryUtils#4249 COUNT(*) AS aliasis not detected byQueryUtils FUNCTION_PATTERN#4242- NullPointerException when using composite id with 'exists' repository method [DATAJPA-1290] #1616
📔 Documentation
- Remove duplicate Query by Example collection-property note #4270
- Document fetch behavior for streaming query results #4262
- Improve documentation to clearly state that Query By Example ignores collections [DATAJPA-1127] #1472
- Add note about driver behaviour for streaming query results [DATAJPA-1007] #1346
🔨 Dependency Upgrades
- Upgrade to Hibernate 7.2.18.Final #4277
- Upgrade to Maven Wrapper 3.9.16 #4268
- Upgrade to Hibernate 7.2.17.Final #4265
- Upgrade to Postgres JDBC Driver 42.7.11 #4259
- Upgrade to Hibernate 7.2.16.Final #4258
- Upgrade to Hibernate 7.2.14.Final #4248
❤️ Contributors
We'd like to thank all the contributors who worked on this release!
- Interface projection from JPQL Multi-SELECT throws
-
4.0.517 Apr 2026Release notes
Open source →📗 Links
⭐ New Features
- Consider unsafe
JpaSortin Querydsl sorting #4211 - Querydsl sorting should support arbitrary String expressions #4209
🐞 Bug Fixes
- Do not use tuple-typed queries for derived count queries. #4235
- Enhance type filter to cover
java.sqlpackage #4231 - Page with interface projection on derived query fails with
ConverterNotFoundException#4230 - Ahead-of-Time optimizations fail when a Hibernate entity uses
java.sql.Clob#4228 SimpleJpaRepository.existsById(…)returnsfalsewhen multiple rows exist for the same ID #4227- AOT-generated repositories convert array binding values to
List#4223 - Fix keyset pagination with hierarchical idclass #4156
🔨 Dependency Upgrades
- Update to Hibernate 7.2.11.Final #4238
- Upgrade to Hibernate 7.2.10.Final #4233
- Upgrade to MySQL 8.0.45 Docker image #4229
- Upgrade to Eclipselink 5.0.0 #4221
- Upgrade to Hibernate 7.2.7.Final #4220
❤️ Contributors
We'd like to thank all the contributors who worked on this release!
- Consider unsafe
-
4.0.413 Mar 2026Nothing published for this version
-
4.0.313 Feb 2026Nothing published for this version
-
4.0.216 Jan 2026Nothing published for this version
-
4.0.112 Dec 2025Nothing published for this version
-
4.0.014 Nov 2025Nothing published for this version
-
4.0.0-RC231 Oct 2025 pre-releaseNothing published for this version
-
4.0.0-RC117 Oct 2025 pre-releaseNothing published for this version
-
4.0.0-M612 Sep 2025 pre-releaseNothing published for this version
-
4.0.0-M515 Aug 2025 pre-releaseNothing published for this version
-
4.0.0-M418 Jul 2025 pre-releaseNothing published for this version
-
4.0.0-M316 May 2025 pre-releaseNothing published for this version
-
4.0.0-M222 Apr 2025 pre-releaseNothing published for this version
-
4.0.0-M124 Jan 2025 pre-releaseNothing published for this version
-
3.5.1324 Jun 2026Release notes
Open source →📗 Links
🐞 Bug Fixes
- Fix parsing of single-character string literals in JPQL and EQL collection member expressions #4282
- JPQL and EQL fail to parse a single-character string literal as the left operand of
MEMBER OF#4278
🔨 Dependency Upgrades
- Upgrade to Hibernate 6.6.53.Final #4288
❤️ Contributors
We'd like to thank all the contributors who worked on this release!
-
3.5.1209 Jun 2026Release notes
Open source →📗 Links
🐞 Bug Fixes
- Fix JPQL, EQL, and HQL query rendering round-trips #4273
- JPQL and EQL renderers fail using
TREAT,LOCATE, and subqueries from collection members #4272
📔 Documentation
- Remove duplicate Query by Example collection-property note #4270
- Document fetch behavior for streaming query results #4262
- Improve documentation to clearly state that Query By Example ignores collections [DATAJPA-1127] #1472
- Add note about driver behaviour for streaming query results [DATAJPA-1007] #1346
🔨 Dependency Upgrades
- Upgrade to Maven Wrapper 3.9.16 #4269
- Upgrade to Hibernate 6.6.52.Final #4266
- Upgrade to Postgres JDBC Driver 42.7.11 #4257
- Upgrade to Hibernate 6.6.51.Final #4256
- Upgrade to Hibernate 6.6.50.Final #4247
❤️ Contributors
We'd like to thank all the contributors who worked on this release!
-
3.5.1117 Apr 2026Release notes
Open source →📗 Links
⭐ New Features
- Consider unsafe
JpaSortin Querydsl sorting #4211 - Querydsl sorting should support arbitrary String expressions #4209
🐞 Bug Fixes
SimpleJpaRepository.existsById(…)returnsfalsewhen multiple rows exist for the same ID #4227
🔨 Dependency Upgrades
- Update to Hibernate 6.6.48.Final #4237
- Upgrade to Hibernate 6.6.47.Final #4232
- Upgrade to MySQL 8.0.45 Docker image #4229
- Upgrade to Hibernate 6.6.45.Final #4219
❤️ Contributors
We'd like to thank all the contributors who worked on this release!
- Consider unsafe
-
3.5.1013 Mar 2026Nothing published for this version
-
3.5.913 Feb 2026Nothing published for this version
-
3.5.816 Jan 2026Nothing published for this version
-
3.5.712 Dec 2025Nothing published for this version
-
3.5.614 Nov 2025Nothing published for this version
-
3.5.517 Oct 2025Nothing published for this version
-
3.5.412 Sep 2025Nothing published for this version
-
3.5.315 Aug 2025Nothing published for this version
-
3.5.218 Jul 2025Nothing published for this version
-
3.5.113 Jun 2025Nothing published for this version
-
3.5.016 May 2025Nothing published for this version
-
3.4.1312 Dec 2025Nothing published for this version
-
3.4.1214 Nov 2025Nothing published for this version
-
3.4.1117 Oct 2025Nothing published for this version
-
3.4.1012 Sep 2025Nothing published for this version
-
3.4.915 Aug 2025Nothing published for this version
-
3.4.818 Jul 2025Nothing published for this version
-
3.4.713 Jun 2025Nothing published for this version
-
3.4.616 May 2025Nothing published for this version
-
3.4.522 Apr 2025Nothing published for this version
-
3.4.414 Mar 2025Nothing published for this version
-
3.4.314 Feb 2025Nothing published for this version
-
3.4.217 Jan 2025Nothing published for this version
-
3.4.113 Dec 2024Nothing published for this version
-
3.4.015 Nov 2024Nothing published for this version
-
3.3.1313 Jun 2025Nothing published for this version
-
3.3.1216 May 2025Nothing published for this version
-
3.3.1122 Apr 2025Nothing published for this version
-
3.3.1014 Mar 2025Nothing published for this version
-
3.3.914 Feb 2025Nothing published for this version
-
3.3.817 Jan 2025Nothing published for this version
-
3.3.713 Dec 2024Nothing published for this version
-
3.3.615 Nov 2024Nothing published for this version
-
3.3.518 Oct 2024Nothing published for this version
-
3.3.413 Sep 2024Nothing published for this version