spring-boot-engineer

Generates Spring Boot 3.x applications with REST controllers, JPA repositories, and Spring Security 6.

Updated Mar 9, 2026
One-click install
npx skills add https://github.com/ArMaTeC/Redball --skill spring-boot-engineer-armatec
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: spring-boot-engineer
Source: https://github.com/ArMaTeC/Redball/tree/main/.devin/skills/spring-boot-engineer
Command: npx skills add https://github.com/ArMaTeC/Redball --skill spring-boot-engineer-armatec

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve? Building Spring Boot 3.x applications requires coordinating many layers—entities, repositories, services, controllers, security, and tests—and using outdated Spring Boot 2.x patterns or inconsistent architecture leads to fragile, insecure code. ## Core Features & Use Cases - Layered Code Generation: Produces entities, Spring Data JPA repositories, services with constructor injection, REST controllers, DTO records, and global exception handlers following Spring Boot 3.x conventions. - Security & Cloud Patterns: Implements Spring Security 6 with JWT authentication, OAuth2 resource servers, method security, plus Spring Cloud Config, Eureka, Gateway, and Resilience4j circuit breakers. - Testing Support: Generates unit tests, @WebMvcTest slices, @DataJpaTest repository tests, and Testcontainers-based integration tests. - Use Case: Ask for a product catalog microservice and receive a complete working structure—entity, repository, transactional service, validated REST controller, exception handler, and test slice—ready to compile and run. ## Quick Start Ask the assistant to create a Spring Boot REST API for managing products with JPA persistence, input validation, and JWT-based security.

Frequently Asked Questions about spring-boot-engineer

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

FAQPage Schema
How do I create a REST controller in Spring Boot 3?

Annotate a class with @RestController and @RequestMapping, inject the service via the constructor, and map methods with @GetMapping or @PostMapping. Validate request bodies with @Valid and return ResponseEntity or use @ResponseStatus for status codes.

How to implement JWT authentication with Spring Security 6?

Define a SecurityFilterChain bean with stateless sessions, add a OncePerRequestFilter that parses the Bearer token, and build tokens with a JwtService using an HMAC secret from environment variables. Register users through a UserDetailsService backed by a JPA repository.

Does Spring Boot 3 still support WebSecurityConfigurerAdapter?

No, WebSecurityConfigurerAdapter was removed in Spring Security 6. Configure security by declaring a SecurityFilterChain bean with lambda-style HttpSecurity configuration instead of extending the deprecated adapter.

Should I use field injection or constructor injection in Spring?

Use constructor injection by declaring final dependencies and a single constructor, which requires no @Autowired annotation. Field injection hides dependencies, complicates testing, and prevents immutability, so it should be avoided.

How do I test Spring Data JPA repositories with a real database?

Use @DataJpaTest with Testcontainers to run a PostgreSQL container and wire its JDBC URL via @DynamicPropertySource. For lightweight tests, @DataJpaTest with an in-memory H2 database and TestEntityManager covers standard repository queries.

Can I mix blocking JPA code with Spring WebFlux?

No, mixing blocking calls like .block() inside a reactive WebFlux chain stalls event-loop threads and degrades throughput. Choose one model per service: reactive repositories with WebFlux, or blocking JPA with Spring MVC.