Spring Data JPA, part of the larger spring-data family, makes it easy to easily implement jpa based repositories. This module deals with enhanced support for jpa based data access layers. It makes it easier to build Spring-powered applications that use data access technologies.
spring-data is based on the concepts of Aggregates, Aggregate Roots and Repositories. It works best if these concepts are considered when you design your domain model. You might want to look into "Advancing Enterprise DDD" to learn what that actually means.
Please note that Spring Data doesn't try to abstract over the underlying technology. This means as a user you still have to understand it. In the case of Spring Data JPA this means you need to understand JPA in order to properly work with Spring Data JPA. This applies especially to the workings of the 1st level cache.
Useful links
- Home page
- Reference documentation
- Javadoc
- Blog article describing how to use
Specifications to construct reusable where conditions.Blog article describing how to use
Specifications to construct reusable where conditions. - The JPA specification
Blog article describing how to use Spring Expression Language (SpEL) in annotated queries
Popular Questions
What is Spring Data JPA (good for)
Common questions
JPA Query to handle NULL parameter value and similarly How to query a column which value is null in JPA?
Controlling eager/lazy loading for queries: Hibernate Spring JPA load only specific lazy relationship
How to create a dynamic where clause as one needs for search dialogs for example: Dynamic spring data jpa repository query with arbitrary AND clauses.