liveBook · Manning

Spring Data JDBC

As explained in Spring AI in Action

Spring Data JDBC is a Spring Data module that provides repository-based relational database access using JDBC.

Spring Data JDBC provides repository-based relational database access for Spring Boot applications. Add its starter, a database driver, and schema initialization to connect domain records with relational tables. section 6.2.1

A typical implementation proceeds as follows:

  • Choose a database, such as H2 for an in-memory application or PostgreSQL running through Docker Compose. section 6.2.1 section 7.3.1
  • Define schema.sql and data.sql files, configuring spring.sql.init.mode=always when initialization must also run against PostgreSQL. section 7.3.2
  • Map a Java record to a table and mark its identifier with @Id. section 7.3.2
  • Extend CrudRepository to obtain standard operations and add derived or @Query methods for application-specific retrieval. section 6.2.1 section 7.3.2
package com.example.boardgamebuddy.gamedata;

import org.springframework.data.repository.CrudRepository;

import java.util.Optional;

public interface GameRepository extends CrudRepository<Game, Long> {

  Optional<Game> findBySlug(String slug);

}

Inspect a minimal repository declaration with an added findBySlug query. section 6.2.1

How Spring AI in Action covers it

How deep it goes
Explains dependencies, database initialization, record mapping, standard repositories, and custom SQL queries.
Examples
Uses Game records, GameRepository interfaces, H2 and PostgreSQL schemas, seed data, slug lookup, player-count, and playing-time queries.
What it assumes
Assumes a Spring Boot project and Java records while teaching dependency selection, schema setup, and repository declaration.
What you can do after
Build it from scratch by configuring a database, mapping records, and querying relational data through repositories.
How it connects
Connects Spring Boot, JDBC, CrudRepository, SQL initialization, H2, PostgreSQL, Docker Compose, and MCP Server.

Also explained in

Compare how 3 books explain Spring Data JDBC →

Related concepts

This explainer was generated by Manning's knowledge graph from the text of Spring AI in Action. The section links point to the parts of the book it draws on.