On this page
Overview
Spring Data JPA is the JPA data-access module in the Spring Data family. Repository interfaces and finder methods are implemented automatically, with support for CRUD operations, query methods, pagination, auditing, and custom repository code.
Features and best fit
Based on official documentation; not hands-on tested · Content checked:
Key features
Generate CRUD implementations from repository interfaces
Repository interfaces provide standard CRUD behavior for JPA entities and remove repeated data-access implementation code.
Sources: [1]
Derive queries from method names and combine pagination and auditing
Dynamic queries can be derived from method names alongside NamedQueries, pagination, created/last-changed auditing, and custom repository implementations.
Sources: [1]
Best fit
Before adoption
JPA query and fetch behavior still matters below the repository abstraction
Spring Data JPA simplifies JPA access, but entity mapping, transaction behavior, and fetching are still governed by the underlying JPA provider. Inspect generated SQL for performance-sensitive paths.
Sources: [1]
Version 4.0.7 fixes JPQL/HQL parsing and upgrades JDBC/JPA provider dependencies
The 4.0.7 release includes fixes around LIKE and MEMBER OF parsing plus upgrades to the PostgreSQL JDBC Driver, Hibernate, EclipseLink, and related dependencies.
Sources: [2]
Official sources
- [1]Spring Data JPA README(2026-10-06)
- [2]Spring Data JPA 4.0.7 release(2026-10-06)
Supplemental curator note
It fits Spring Boot and Kotlin applications that want less JPA repository boilerplate. JPA provider fetch behavior and transaction boundaries still matter beneath the repository abstraction.
Try it in 3 steps
- 1
Get the source
git clone --depth 1 https://github.com/spring-projects/spring-data-jpa.git - 2
Enter the repository
cd spring-data-jpa - 3
Check the official steps
Continue with the commands in the README Installation, Quick Start, or Getting Started section.
find . -maxdepth 1 -iname 'README*' -exec sed -n '1,220p' {} \; -quit
Growth
Growth trends · Last 30 days
3,287 Stars
Trend data is still being collected.
Development activity
Last 90 days · weekly
- Commits (last 30 days)
- 41
- Open PRs
- 26
Development activity is still being collected.
Built with
Categories and tags
Categories
GitHub data
GitHub dataView detailed GitHub data
GitHub Topics
- spring-data
- jpa
- spring
- ddd
- java
- framework
- Stars
- 3,287
- Forks
- 1,578
- Watchers
- 190
- Open issues
- 96
- Contributors
- 186
- Owner type
- Organization
- Primary language
- Java
- License
- Apache-2.0
- Repository last updated
- Oct 5, 2026
Related information
Write a related articleShare a guide or use case for this OSS in Markdown. Articles are published after administrator approval.
Explore next
- MyBatis20,449 Stars
3 shared tag(s) · 1 shared category(s) · Same language
keep SQL explicit while mapping query results into Java objects
Java - Spring Boot81,561 Stars
3 shared tag(s) · Same language
put Spring application assembly and operations on a common foundation
Java - Turso Database24,632 Stars
2 shared tag(s) · 2 shared category(s)
run SQLite-compatible SQL on a Rust database engine with bindings for multiple languages
Rust - Entity Framework Core14,797 Stars
2 shared tag(s) · 2 shared category(s)
map .NET objects to databases with LINQ queries, change tracking, updates, schema migrations, and provider plugins
C# - Kysely14,261 Stars
2 shared tag(s) · 2 shared category(s)
keep SQL structure visible while using TypeScript inference for safe queries and result types
TypeScript - node-postgres13,218 Stars
2 shared tag(s) · 2 shared category(s)
connect Node.js directly to PostgreSQL with pools, parameterized queries, and LISTEN/NOTIFY
JavaScript
Report incorrect information
Tell us if any listing information is incorrect or outdated.