# 304 Frameworks Spring Data Jdbc

> Use when you need to use Spring Data JDBC with Java records — including entity design with records, repository pattern, immutable updates, aggregate relationships, custom queries, transaction management, and avoiding N+1 problems. Part of the skills-for-java project

- Skill: `majiayu000/304-frameworks-spring-data-jdbc` (Agent Skill, multi-file: 2 files)
- Install (CLI): `npx skillmds add majiayu000/304-frameworks-spring-data-jdbc`
- Raw SKILL.md: https://api.skillmd.com/api/skills/majiayu000/304-frameworks-spring-data-jdbc/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- License: Apache-2.0
- Author: majiayu000 (https://skillmd.com/u/majiayu000)
- Updated: 2026-09-09
- Page: https://skillmd.com/skills/majiayu000/304-frameworks-spring-data-jdbc

---

# Spring Data JDBC with Records

Apply Spring Data JDBC guidelines with Java records.

**What is covered in this Skill?**

- Records for entity classes
- Repository pattern
- Immutable updates
- Aggregate relationships
- Custom queries
- Transaction management
- Single query loading (N+1 avoidance)

**Scope:** Apply recommendations based on the reference rules and good/bad code examples.

## Constraints

Before applying any Spring Data JDBC changes, ensure the project compiles. If compilation fails, stop immediately. After applying improvements, run full verification.

- **MANDATORY**: Run `./mvnw compile` or `mvn compile` before applying any change
- **SAFETY**: If compilation fails, stop immediately
- **VERIFY**: Run `./mvnw clean verify` or `mvn clean verify` after applying improvements
- **BEFORE APPLYING**: Read the reference for detailed rules and good/bad patterns

## Reference

For detailed guidance, examples, and constraints, see [references/304-frameworks-spring-data-jdbc.md](references/304-frameworks-spring-data-jdbc.md).

