Open6

【Java】Java開発(Spring Boot)学習ロードマップ

GucchiGucchi

Chat GPTに壁打ちしてみた

📅 夏休み Java × AWS 個人開発ロードマップ(週ごとタスク表)

🟢 0週目(準備)

  • Java 17 インストール
  • IntelliJ IDEA Community 導入
  • GitHub アカウント作成 & 初回 push(Hello World)
  • Docker Desktop 導入
  • AWS アカウント作成 & 無料枠確認(Billing アラート設定)

🟢 1〜2週目(基礎固め:ローカル開発)

  • Java文法復習(クラス、例外、コレクション、Stream API)
  • Spring Boot プロジェクト作成(Spring Initializr)
  • REST API(/tasks の CRUD API)実装
  • Docker で MySQL/PostgreSQL を起動
  • JPA/Hibernate でDB接続しCRUD動作確認
  • GitHub にコードをpush

👉 成果物:TodoリストAPI(ローカルDB連携済み)


🟢 3〜5週目(機能拡張:アプリらしさを追加)

  • ER図を作成(ユーザー・タスクの関係)
  • Spring Security でログイン認証(ユーザー登録/認証API)
  • ユーザーごとのタスク管理(認証済みユーザーだけが自分のタスクにアクセス可能)
  • REST APIの設計改善(ステータスコード、エラーハンドリング)
  • JUnit/MockMvcで単体テスト作成
  • GitHubにコミット

👉 成果物:ユーザー管理付きタスク管理アプリ(ローカル完成版)


🟢 6〜7週目(AWSデプロイ:基盤体験)

  • EC2 (t2.micro) 起動 → Spring Bootアプリをデプロイ
  • セキュリティグループ設定(22, 80, 8080)
  • RDS (t2.micro, MySQL/PostgreSQL) 作成 → アプリ接続
  • S3バケット作成 → ファイル保存 or 静的Webページ公開
  • IAMユーザー作成 → 最小権限でS3アクセス
  • VPC / サブネット / セキュリティグループの仕組み理解

👉 成果物:AWS上で動作するタスク管理アプリ(EC2+RDS+S3+IAM)


🟢 8〜9週目(発展 & ポートフォリオ化)

  • Dockerイメージを作成 → EC2上で起動
  • GitHub Actions で自動ビルド & デプロイ体験(CI/CD)
  • CloudWatch でアプリログ確認
  • アプリ構成図を作成(draw.io / Mermaid)
  • Zenn に記事公開
    • 学んだこと(Spring Boot, Docker, AWS)
    • 構成図、エラーと解決法、感想
    • GitHubリポジトリへのリンク添付

👉 成果物:完成アプリ(AWS稼働) + Zenn記事(ポートフォリオ)


🎯 夏休み終了時のゴール

  • Java & Spring Boot で業務風アプリを開発
  • AWS(EC2, RDS, S3, IAM)を用いたデプロイ経験
  • Docker / GitHub / CI/CD の一通りの体験
  • Zenn記事として公開 → ポートフォリオ化