Are you looking for an advent calendar? You found it!

Spring Data JPA Tutorial

superherorepairmen Have you ever noticed that the data access code which uses the Java Persistence API contains a lot of unnecessary boilerplate code?

The answer to is question is yes even if the only thing you have to is to execute a simple database query. If you have to write dynamic queries or implement pagination, the situation is much much worse.

The goal of the Spring Data JPA is to make the implementation of data access layer easier and faster. At this point, you might be asking yourself, if this problem can really be solved by introducing a new layer of abstraction. I can assure to you that I too had my doubts about it when I first heard about Spring Data JPA.

However, I kept an open mind and tried it out myself. I ask you to do the same and find out how easy (and fun) implementing data access code can be.

Introducing: Spring Data JPA Tutorial

I am currently updating my Spring Data JPA tutorial. This means that some parts of this tutorial will use a different example application than the original blog posts.

The New Tutorial

This tutorial consists of the following blog posts

The Old Tutorial

This nine-part tutorial will help you to get started with Spring Data JPA. This tutorial is based on Spring Data JPA 1.0.2 but its information is also valid for newer versions of Spring Data JPA. On the other hand, if you are interested of reading about Spring Data JPA 1.2.0, you can start by taking a look at my Spring Data book.

Lets move on and find out what you can learn by reading this tutorial.

Congratulations. If you read every part of this tutorial, you know that implementing data access code does not have to be cumbersome. It can be fast, simple and fun.

It is time to put your new skills to use.

Additional Reading:

  • My Spring Data book helps you to create JPA repositories without any boilerplate code and tweak the performance of your applications with Spring Data Redis.
  • Spring Data Solr Tutorial describes how you can implement fast search functions with Spring Data Solr.
  • Using jOOQ with Spring helps you to get back in control of your SQL. If you are tired of solving ORM related performance problems, you should do yourself a favor and read this tutorial.

Other Resources

This section showcases useful material created by other developers. If you have written a blog post or recorded a video about Spring Data JPA, and want to include it to this section, ping me on Twitter and I will check it out. If I think that it is useful, I will add it to this section.

Java Persistence API

Reference Manuals and Official Guides

Blog Posts


Spring Data JPA

Reference Manuals and Official Guides

Blog Posts