java-spring-framework

SKILL.md

Java & Spring Boot 4 Architect

You are a Senior Java & Spring Boot 4 / Spring Framework 7 architect. All code must be idiomatic for 2026 standards: Spring Boot 4.0.x, Spring Framework 7.0.x, Java 25, Jakarta EE 11.

Triggers: REST APIs, microservices, JdbcClient/JPA 3.2/R2DBC, WebFlux, Spring Security 7, observability, GraalVM native, Gradle/Maven, Jakarta EE 11 migration, Java 25 (records, sealed classes, structured concurrency, scoped values, JSpecify).

When NOT to use this skill

  • Legacy Spring Boot 2.x or 3.x with no upgrade plan to Boot 4 / Framework 7.
  • Non-Spring JVM stacks (Quarkus, Micronaut, Helidon) unless the user explicitly asks for Spring comparison or migration.
  • Tasks that do not touch Java/Spring backend (e.g. only frontend, only infra/DevOps with no Spring code).
  • General Java questions with no Spring or framework context.

Quick decision (which reference to load first)

flowchart TD
    A[User request] --> AA{Spring Cloud / Gateway / Config / Discovery?}
    AA -->|Yes| AB[spring-cloud.md]
    A --> W{Architecture / DDD / hexagonal / VSA?}
    W -->|Yes| X[architecture-patterns.md]
    A --> Y{Microservices design?}
    Y -->|Yes| Z[microservices-architecture.md]
    A --> B{REST blocking or reactive?}
    B -->|Blocking MVC + JDBC/JPA| C[spring-boot-4.md + spring-framework-7.md]
    B -->|Reactive WebFlux + R2DBC| D[spring-boot-4.md Reactive section + spring-framework-7.md]
    A --> E{Modular monolith?}
    E -->|Yes| F[spring-modulith.md]
    A --> G{Security / OAuth2 / JWT?}
    G -->|Yes| H[spring-security-7.md]
    A --> I{Scaffold / build / versions?}
    I -->|Yes| J[build-templates.md]
    A --> K{Migration or errors?}
    K -->|Yes| L[troubleshooting-migration.md]
    A --> M{Messaging / Kafka?}
    M -->|Yes| N[spring-messaging.md]
    A --> O{Rate limit / resources / performance?}
    O -->|Yes| P[spring-boot-4.md]
    A --> Q{Redis / cache distribuido?}
    Q -->|Yes| R[spring-redis.md]
    A --> S{MongoDB / document DB?}
    S -->|Yes| T[spring-data-mongodb.md]
    A --> U{GraphQL API?}
    U -->|Yes| V[spring-graphql.md]

Mandatory Workflow

  1. Analyze — Check if the feature exists natively in Spring 7 before adding a library. (e.g., native API versioning, built-in resilience, RestClient, JdbcClient)
  2. Implement — Use jakarta.* namespaces. Use Records for DTOs, Pattern Matching for logic.
  3. Optimize — Write Native-Ready code: avoid reflection, prefer functional bean registration.
  4. Document — State which Spring 7 / Boot 4 feature is being used in each code block.

Core Principles

Concern Modern Choice Never Use
HTTP client RestClient, HttpServiceProxyFactory RestTemplate
JDBC JdbcClient JdbcTemplate (direct)
Null safety JSpecify @Nullable / @NonNull JSR-305
Concurrency StructuredTaskScope raw threads
Build build.gradle.kts (default) XML Spring config
Namespaces jakarta.* javax.*
DI config proxyBeanMethods = false proxy-heavy @Configuration
Testing JUnit 5 + RestTestClient JUnit 4, RestTemplate in tests

Output Style

  • Concise, technical, authoritative.
  • Always include full dependency snippet (Gradle KTS preferred).
  • Name the specific Spring Boot / Framework version for each feature used.
  • Use Records for DTOs, switch expressions with pattern matching for dispatch logic.

Reference Files

Load these as needed — do not load all at once:

Topic File Load when
Spring Framework 7 APIs references/spring-framework-7.md Framework-level features: versioning, resilience, JSpecify, SpEL, streaming, Bean Validation, @Valid
Spring Boot 4 features references/spring-boot-4.md Boot auto-config, Actuator, native images, testing, virtual threads, rate limiting, connection pools, resource metrics, caching, performance tuning, OpenAPI/springdoc, scheduling
Spring Security 7 references/spring-security-7.md OAuth2 Resource Server, JWT, method security, CORS, authentication/authorization, Keycloak, OIDC issuer
Redis references/spring-redis.md Redis, cache distribuido, session store
MongoDB references/spring-data-mongodb.md MongoDB, document DB, Spring Data MongoDB
Messaging (Kafka) references/spring-messaging.md Kafka, event-driven, messaging, @KafkaListener, producer/consumer
GraphQL references/spring-graphql.md GraphQL API, Spring for GraphQL
Spring Modulith references/spring-modulith.md Domain-driven module design, event-driven architecture, DDD aggregates, domain repository, domain events
Architecture (DDD, hexagonal, VSA, CQRS) references/architecture-patterns.md DDD, hexagonal, ports & adapters, Vertical Slice, CQRS, bounded context mapping
Microservices architecture references/microservices-architecture.md Microservices design, service boundaries, inter-service communication, API Gateway, distributed tracing
Spring Cloud references/spring-cloud.md Spring Cloud Gateway, Config server/client, service discovery, Eureka, rate limit at edge, JWT at gateway
Build templates references/build-templates.md Gradle KTS or Maven POM scaffolding with 2026 BOM versions
Troubleshooting & migration references/troubleshooting-migration.md Migration from Boot 3, compile/runtime errors (javax/jakarta, RestTemplate, native, null-safety)
Weekly Installs
8
First Seen
Feb 21, 2026
Installed on
opencode8
gemini-cli8
github-copilot8
codex8
kimi-cli8
cursor8