Generate a Spring REST controller for a named entity with CRUD endpoints, validation, OpenAPI documentation, and integration tests. Invoke as /spring-controller <Entity>.
インストール
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
Generate a Spring REST controller for a named entity with CRUD endpoints, validation, OpenAPI documentation, and integration tests. Invoke as /spring-controller <Entity>.
paths
["**/*.java","pom.xml","build.gradle*"]
user-invocable
true
Spring REST Controller Scaffold
Generate a $ARGUMENTSController with the following:
@RestController and @RequestMapping("/api/$ARGUMENTS") (lowercased plural)
CRUD endpoints with proper HTTP verbs and status codes:
GET /api/$ARGUMENTS — list (with pagination params)
GET /api/$ARGUMENTS/{id} — fetch one (404 on miss)
POST /api/$ARGUMENTS — create (201 + Location header)
PUT /api/$ARGUMENTS/{id} — update (200 or 404)
DELETE /api/$ARGUMENTS/{id} — delete (204)
Request and response DTOs for $ARGUMENTS (don't expose the JPA entity directly)
@Valid + Jakarta validation annotations on the request DTOs
OpenAPI annotations (@Operation, @ApiResponses)
Integration tests using @SpringBootTest + MockMvc covering happy path, validation failure, and 404
Conventions
Constructor injection (no field @Autowired)
ResponseEntity return types so HTTP status is explicit
Use the project's existing exception handler if @ControllerAdvice is present
Match the package layout of existing controllers
Usage:/spring-controller User → UserController, UserRequest, UserResponse, UserControllerIntegrationTest