code-reviewer
Use when reviewing Spring Boot 4 / Java 17+ code with concrete files or diffs — pull requests, modules, or pasted Java/Spring sources — for migration risks,…
Use when designing or implementing Spring Data JPA on Spring Boot 4 — repository boundaries, projections, query patterns, custom repositories, CQRS read models, entity relationships, or persistence performance fixes. Not for generic SQL help, database admin work, or project-wide
$ npx -y skills add a-pavithraa/springboot-skills-marketplace --skill spring-data-jpa --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/spring-data-jpaContext preview
The summary Claude sees to decide when to auto-load this skill.
Use when designing or implementing Spring Data JPA on Spring Boot 4 — repository boundaries, projections, query patterns, custom repositories, CQRS read models, entity relationships, or persistence performance fixes. Not for generic SQL help, database admin work, or project-wide
name: spring-data-jpa description: Use when designing or implementing Spring Data JPA on Spring Boot 4 — repository boundaries, projections, query patterns, custom repositories, CQRS read models, entity relationships, or persistence performance fixes. Not for generic SQL help, database admin work, or project-wide migration (see the springboot-migration skill).
Use this skill when the task is specifically about persistence design or implementation in a Spring Boot codebase. This skill adds value through aggregate-root guidance, query-pattern selection, CQRS read-model decisions, and the bundled repository and relationship templates.
Collect the minimum context first:
1. Is the type an aggregate root or an internal entity? 2. Is the task primarily read-side, write-side, or both? 3. Is the query simple lookup, filtered search, aggregation, projection, or dynamic criteria? 4. Is the path performance-sensitive? 5. Are there module-boundary or loose-coupling constraints that affect relationship modeling?
Use this table to decide what to load next.
| Pattern | Use when | Read | |---------|----------|------| | Simple repository | Basic CRUD and 1-2 simple lookups | Existing code or none | | `@Query` repository | Multiple filters, joins, sorting, readable JPQL | `references/query-patterns.md` | | DTO projection | Read-only and performance-critical responses | `references/dto-projections.md` | | Custom repository | Criteria API, bulk operations, EntityManager logic | `references/custom-repositories.md` | | CQRS query service | Separate read and write models, reporting, specialized read paths | `references/cqrs-query-service.md` |
Use this decision guide:
| Need | Simple | `@Query` | DTO | Custom | CQRS | |------|--------|----------|-----|--------|------| | Basic CRUD | Yes | Yes | No | Yes | Yes | | Custom filters | No | Yes | Yes | Yes | Yes | | Best read performance | No | Sometimes | Yes | Sometimes | Yes | | Complex dynamic logic | No | No | No | Yes | Yes | | Clear read/write split | No | No | Sometimes | Sometimes | Yes |
Load only the references needed for the current task:
Use the bundled templates in `assets/` instead of rebuilding the pattern from scratch:
> Templates use the same placeholder convention as `creating-springboot-projects` — `{{PACKAGE}}`, `{{MODULE}}`, `{{NAME}}`, `{{TABLE_NAME}}`, `{{TYPE}}`, `{{FIELD}}`. See `creating-springboot-projects/SKILL.md#placeholder-convention` for the full table.
Before finalizing the change, check:
Read `references/performance-guide.md` when the task includes:
When proposing or implementing a persistence change, return:
## Recommended pattern - Pattern: - Why: ## Files to change - `path/to/file` ## References used - `references/...` ## Risks to verify - ...
Claude Code skills that help you build Spring Boot apps with architecture that actually fits your needs.
Use when reviewing Spring Boot 4 / Java 17+ code with concrete files or diffs — pull requests, modules, or pasted Java/Spring sources — for migration risks,…
Use when starting a new Spring Boot 4 project — scaffolding a service, REST API, or modular backend; picking an architecture (layered, package-by-module,…
Use when upgrading an existing Spring Boot application to Boot 4 — dependency transitions, starter renames, test-annotation migration (e.g. @MockBean →…