Spring Data JDBC

1.0.3

Spring 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 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.

The Aggregate Root

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.

Features

  • CRUD operations for simple aggregates with customizable NamingStrategy.

  • Support for @Query annotations.

  • Support for MyBatis queries.

  • Events.

  • JavaConfig based repository configuration by introducing @EnableJdbcRepositories.

Quick start

Bootstrap your application with Spring Initializr.

Documentation

Each Spring project has its own; it explains in great details how you can use project features and what you can achieve with them.
1.0.3 CURRENT GA Reference Doc. API Doc.
1.1.0 M1 PRE Reference Doc. API Doc.
1.1.0 SNAPSHOT Reference Doc. API Doc.
1.0.4 SNAPSHOT Reference Doc. API Doc.