Spring Boot architecture patterns, REST API design, layered services, data access, caching, async processing, and logging. Use for Java Spring Boot backend work.
85
78%
Does it follow best practices?
Impact
93%
1.17xAverage score across 3 eval scenarios
Passed
No findings from the security scan
Fix and improve this skill with Tessl
tessl review fix ./docs/ja-JP/skills/springboot-patterns/SKILL.mdRate limiting filter and request logging middleware
OncePerRequestFilter base class
0%
100%
Bucket4j for rate limiting
100%
100%
ConcurrentHashMap bucket storage
100%
100%
Bandwidth.classic + Refill.greedy
100%
100%
429 on rate limit exceeded
100%
100%
getRemoteAddr() for client IP
100%
100%
No direct X-Forwarded-For read
100%
100%
Request log fields
100%
100%
Structured log format in filter
75%
100%
Duration timing
100%
100%
ForwardedHeaderFilter guidance
50%
100%
SLF4J logger declaration
66%
100%
REST controller structure and exception handling
Constructor injection
0%
100%
@RestController + @RequestMapping
100%
100%
@Validated on controller
0%
100%
Paginated list return type
50%
100%
Pagination request params
50%
100%
CREATED status for POST
100%
100%
@Valid on request body
100%
100%
Java records for DTOs
100%
100%
Bean validation on DTO fields
100%
100%
@ControllerAdvice handler class
100%
100%
Validation exception handler
100%
100%
AccessDenied handler
50%
100%
Generic exception handler with log
0%
0%
RFC 7807 problem details config
100%
100%
Service layer: transactions, caching, async, and logging
Constructor injection in service
100%
100%
@Transactional on write methods
100%
100%
@Transactional(readOnly=true) on reads
100%
100%
@EnableCaching config annotation
100%
100%
@Cacheable usage
100%
100%
@CacheEvict usage
100%
100%
@EnableAsync config annotation
100%
100%
@Async with CompletableFuture
50%
100%
SLF4J logger declaration
100%
100%
Structured key=value log format
100%
100%
Exception as last log argument
100%
100%
JPA repository with @Query
0%
0%
Pagination with Sort
0%
0%
e04ea0b
Table of Contents
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.