spring-data-jpa

Design Spring Data JPA entities, repositories, and schema migrations for Spring Boot projects.

9|1|Updated Jun 16, 2026
One-click install
npx skills add https://github.com/AratKruglik/antigravity-sdlc --skill spring-data-jpa-aratkruglik
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: spring-data-jpa
Source: https://github.com/AratKruglik/antigravity-sdlc/tree/main/plugins/spring-boot-plugin/skills/spring-data-jpa
Command: npx skills add https://github.com/AratKruglik/antigravity-sdlc --skill spring-data-jpa-aratkruglik

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

This skill provides structured patterns and best practices for designing Spring Data JPA entities, repositories, and migrations to improve maintainability, performance, and correctness in Spring Boot projects.

Core Features & Use Cases

  • Entity design guidance: correct usage of @Entity, @Table, ID strategies, auditing, and lazy loading.
  • Repository patterns: derived queries, @Query, projections, pagination, and DTO mappings.
  • Performance and consistency: strategies to avoid N+1 queries, fetch joins, and proper transaction boundaries.
  • Schema migrations: Flyway and Liquibase integration for evolving the database schema.

Quick Start

Apply the spring-data-jpa skill to a Spring Boot project to design entities and repositories following the provided patterns.

Frequently Asked Questions about spring-data-jpa

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I design Spring Data JPA entities to avoid common performance issues?

Design Spring Data JPA entities by applying correct ID strategies, audit fields, and lazy loading practices. This approach improves maintainability and performance while preventing common persistence pitfalls like eager fetching unnecessary associations.

What's the best way to prevent N+1 queries in Spring Boot repositories?

Prevent N+1 queries in Spring Boot repositories by using fetch joins, derived queries, and proper transaction boundaries. Structured repository patterns with @Query annotations and DTO projections optimize data retrieval and consistency.

How do I manage database schema migrations with Flyway or Liquibase in Spring Data JPA?

Manage database schema migrations by integrating Flyway or Liquibase with your Spring Data JPA project. These tools provide versioned schema evolution, ensuring database changes are tracked and applied consistently across environments.

Can I use Spring Data JPA projections to map entities to DTOs directly?

Yes, Spring Data JPA supports projections and DTO mappings within repository methods. You can use derived queries and @Query annotations to map entity data directly into custom DTOs, reducing overhead and improving query performance.

Does this Spring Data JPA skill apply to projects without Hibernate?

This skill targets Spring Boot projects using spring-boot-starter-data-jpa, which includes Hibernate as the default provider. It covers Hibernate-specific entity design and repository patterns for robust data access.

Why does my Spring Data JPA lazy loading fail outside of transactions?

Lazy loading in Spring Data JPA fails outside transactions because the Hibernate session closes before associated entities are fetched. Establishing proper transaction boundaries keeps the session active during repository method execution.