mcpField
S
spring-boot-engineer

spring-boot-engineer

github.com/404kidwiz開発103 回インストール
リポジトリ

spring-boot-engineer について

spring-boot-engineerは、Spring Boot 3+によるJavaアプリケーションとマイクロサービス開発向けのスキルです。API、セキュリティ、データアクセス、リアクティブ開発、クラウドネイティブな実践を扱います。

主な機能

  1. 01Spring WebとWebFluxによるAPI開発
  2. 02Spring Securityの設定
  3. 03Spring Dataリポジトリ
  4. 04リアクティブアプリケーションのパターン
  5. 05クラウドネイティブな監視と設定

活用シーン

  1. 01Spring Bootマイクロサービスの構築
  2. 02検証機能付きREST APIの作成
  3. 03エンドポイントの認証と認可の設定
  4. 04Project Reactorによるリアクティブサービス開発

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/404kidwiz/claude-supercode-skills --skill spring-boot-engineer

インストール後、Claude Code で/spring-boot-engineerを入力して読み込まれたか確認します。

詳細

Spring Boot エンジニア

目的

Spring Boot 3+ を使用した本番品質の Java アプリケーション構築に関する専門知識を提供します。マイクロサービスアーキテクチャ、クラウドネイティブパターン、リアクティブプログラミング、仮想スレッドを含む最新の Java 機能の活用を専門としています。

使用する場面

  • Spring Boot アプリケーションやマイクロサービスを構築する
  • Spring Web または WebFlux で REST API を実装する
  • 認証/認可のために Spring Security を設定する
  • Spring Data JPA、MongoDB、または R2DBC をセットアップする
  • Spring Cloud パターン(Config、Gateway、Circuit Breaker)を実装する
  • Spring Boot 3.2+ で仮想スレッドを使用する
  • Project Reactor でリアクティブアプリケーションを構築する
  • Spring Kafka または RabbitMQ でメッセージングを統合する

クイックスタート

次の場合にこのスキルを呼び出してください:

  • Spring Boot アプリケーションやマイクロサービスを構築する
  • Spring Web または WebFlux で REST API を実装する
  • 認証/認可のために Spring Security を設定する
  • Spring Data リポジトリをセットアップする
  • Spring Cloud パターンを実装する

次の場合は呼び出さないでください:

  • Spring を使用しない一般的な Java の質問 → java-architect を使用してください
  • Kubernetes のデプロイ → kubernetes-specialist を使用してください
  • データベース設計 → database-administrator を使用してください
  • フロントエンド開発 → 適切なフロントエンドスキルを使用してください

判断フレームワーク

Spring Boot Task?
├── API Development → Spring Web (blocking) vs WebFlux (reactive)
├── Data Access → JPA (relational) vs MongoDB (document) vs R2DBC (reactive)
├── Security → OAuth2/OIDC vs JWT vs Basic Auth
├── Messaging → Kafka (high throughput) vs RabbitMQ (routing)
├── Service Communication → REST vs gRPC vs messaging
└── Configuration → Spring Cloud Config vs Kubernetes ConfigMaps

主なワークフロー

1. マイクロサービスの開発
  1. Spring Initializr と必要なスターターを使用してプロジェクトを初期化します
  2. ドメインモデルと DTO を定義します
  3. Spring Data でリポジトリ層を実装します
  4. ビジネスロジックを含むサービス層を作成します
  5. 適切なエラー処理を備えた REST コントローラーを構築します
  6. バリデーション、セキュリティ、オブザーバビリティを追加します
  7. 単体、統合、コントラクトの各レベルでテストを作成します
  8. クラウドへのデプロイ向けに設定します(ヘルス、メトリクス、設定)
2. Spring Security の設定
  1. spring-boot-starter-security の依存関係を追加します
  2. セキュリティフィルターチェーンの設定を定義します
  3. 認証プロバイダー(JWT、OAuth2、LDAP)を設定します
  4. エンドポイントの認可ルールをセットアップします
  5. 必要に応じてカスタム UserDetailsService を実装します
  6. CORS と CSRF の設定を追加します
  7. セキュリティ設定を十分にテストします
3. リアクティブアプリケーションの開発
  1. Spring Web の代わりに WebFlux を使用します
  2. リアクティブなデータベースアクセスのために R2DBC を設定します
  3. コントローラーとサービスから Mono/Flux を返します
  4. ノンブロッキング HTTP 呼び出しに WebClient を使用します
  5. バックプレッシャー処理を実装します
  6. StepVerifier でテストします
  7. リアクティブに対応したオブザーバビリティで監視します

ベストプラクティス

  • フィールドインジェクションではなくコンストラクターインジェクションを使用します
  • プロファイルと ConfigMaps を使って設定を外部化します
  • @ControllerAdvice で適切な例外処理を実装します
  • Actuator エンドポイントを有効にして、ヘルスとメトリクスを取得します
  • 統合テストに Testcontainers を使用します
  • I/O バウンドなワークロードには仮想スレッドを活用します(Spring Boot 3.2+)

アンチパターン

  • フィールドインジェクション → テスト容易性のためにコンストラクターインジェクションを使用します
  • リアクティブチェーン内でのブロッキング → リアクティブパイプラインをノンブロッキングに保ちます
  • 汎用的な例外の捕捉 → 適切な具体的例外を処理します
  • 設定のハードコーディング → 環境変数で外部化します
  • ヘルスチェックの欠如 → Actuator のヘルスエンドポイントを必ず公開します

コメント