Spring Data JPA - Reference Documentation


Oliver Gierke, Thomas Darimont, Christoph Strobl


Copies of this document may be made for your own use and for distribution to others, provided that you do not charge any fee for such copies and further provided that each copy contains this Copyright Notice, whether distributed in print or electronically.

Table of Contents

1. Project metadata
I. Reference Documentation
1. Working with Spring Data Repositories
1.1. Core concepts
1.2. Query methods
1.2.1. Defining repository interfaces
Fine-tuning repository definition
1.2.2. Defining query methods
Query lookup strategies
Query creation
Property expressions
Special parameter handling
1.2.3. Creating repository instances
XML configuration
Standalone usage
1.3. Custom implementations for Spring Data repositories
1.3.1. Adding custom behavior to single repositories
1.3.2. Adding custom behavior to all repositories
1.4. Spring Data extensions
1.4.1. Web support
Basic web support
Hypermedia support for Pageables
1.4.2. Repository populators
1.4.3. Legacy web support
Domain class web binding for Spring MVC
Web pagination
2. JPA Repositories
2.1. Introduction
2.1.1. Spring namespace
2.1.2. Annotation based configuration
2.2. Persisting entities
2.2.1. Saving entities
2.3. Query methods
2.3.1. Query lookup strategies
2.3.2. Query creation
2.3.3. Using JPA NamedQueries
2.3.4. Using @Query
2.3.5. Using named parameters
2.3.6. Using SpEL expressions
2.3.7. Modifying queries
2.3.8. Applying query hints
2.4. Specifications
2.5. Transactionality
2.5.1. Transactional query methods
2.6. Locking
2.7. Auditing
2.7.1. Basics
Annotation based auditing metadata
Interface-based auditing metadata
2.7.2. General auditing configuration
2.8. Miscellaneous
2.8.1. Merging persistence units
2.8.2. Classpath scanning for @Entity classes and JPA mapping files
2.8.3. CDI integration
II. Appendix
A. Namespace reference
A.1. The <repositories /> element
B. Repository query keywords
B.1. Supported query keywords
C. Frequently asked questions