Get ahead
VMware offers training and certification to turbo-charge your progress.
Learn moreSpring Data JDBC, part of the larger Spring Data family, makes it easy to implement JDBC based repositories. This module deals with enhanced support for JDBC based data access layers. It makes it easier to build Spring powered applications that use data access technologies.
Spring Data JDBC is co-hosted with Spring Data R2DBC in the Spring Data Relational module providing infrastructure for direct SQL database access.
Spring Data JDBC aims at being conceptually easy. In order to achieve this it does NOT offer caching, lazy loading, write behind or many other features of JPA. This makes Spring Data JDBC a simple, limited, opinionated ORM.
Spring Data repositories are inspired by the repository as described in the book Domain Driven Design by Eric Evans. One consequence of this is that you should have a repository per Aggregate Root. Aggregate Root is another concept from the same book and describes an entity which controls the lifecycle of other entities which together are an Aggregate. An Aggregate is a subset of your model which is consistent between method calls to your Aggregate Root.
Spring Data JDBC tries its best to encourage modeling your domain along these ideas.
CRUD operations for simple aggregates with customizable NamingStrategy
.
Support for @Query
annotations.
Support for MyBatis queries.
Events.
JavaConfig based repository configuration by introducing @EnableJdbcRepositories
.