Spring Boot プロジェクトの作成と動作確認
この章のゴール
- Spring Initializr でプロジェクトを作成できる
- Eclipse でインポートして起動し、ブラウザで
Hello, Spring!を表示できる - 生成物のフォルダ構成を把握できる
1. プロジェクトの作成(ZIP を取得)
-
ブラウザで https://start.spring.io を開く。
-
以下の設定を入力する。
設定項目 値 Project Maven Language Java Spring Boot 3.x(安定版 ※= SNAPSHOTではない選択肢)Group com.exampleArtifact ecsamplePackaging Jar Java 21 -
下部の「Add Dependencies(依存関係を追加)」ボタンをクリックし、次の3つを追加する。
依存名 用途 使用章 Spring Web コントローラなどの Web 機能を使う 第2章以降 Thymeleaf HTML テンプレートで動的ページを作る 第2章以降 Spring Boot DevTools 保存時に自動リロードする開発補助機能 全章共通 (以下は後の章で追加する予定。ここで入れても問題ないが、依存追加の手順を学ぶためあえて省いている。効率重視なら今入れてもよい)
依存名 用途 使用章 Validation (spring-boot-starter-validation) 入力フォームの値を検証(バリデーション)する 第7章 PostgreSQL Driver DB 接続を行う 第9章 MyBatis Framework SQL と Java を連携させる 第9章 -
「Generate」ボタンを押し、
ecsample.zipをダウンロードする。
2. ZIP の展開と Eclipse への取り込み
- ダウンロードした
ecsample.zipを任意の作業フォルダに解凍する(例:C:\workspace\ecsample)。 - Eclipse を起動する。
- ワークスペースを選ぶダイアログが表示されたら、任意の場所を指定して「Launch」。
- メニューから ファイル > インポート... を選ぶ。
- ダイアログで Maven > 既存 Maven プロジェクト を選び「次へ」。
- ルート・ディレクトリ に解凍先フォルダ(例:
C:\workspace\ecsample)を指定する。 - プロジェクト に
ecsampleのpom.xmlが表示されていることを確認し「完了」。 - 初回は依存解決が走る。パッケージ・エクスプローラー の
ecsampleに赤バツが無いことを確認する。
3. フォルダ構成を確認
ecsample/
├─ src/
│ ├─ main/
│ │ ├─ java/com/example/ecsample/
│ │ │ └─ EcsampleApplication.java ← エントリポイント
│ │ └─ resources/
│ │ ├─ static/ ← CSS/JS
│ │ ├─ templates/ ← Thymeleaf HTML
│ │ └─ application.properties
│ └─ test/
└─ pom.xml ← 依存定義
4. アプリを起動してみる
- パッケージ・エクスプローラー(画面左のプロジェクト一覧)で、プロジェクト名
ecsampleを右クリックする。 - メニューから 実行 > Spring Boot アプリケーション を選ぶ。
- コンソールに
Started EcsampleApplicationと表示され、ポート番号8080で起動する。 - ブラウザで
http://localhost:8080/にアクセスし、デフォルトの 404 ページWhitelabel Error Pageが表示されればサーバは正常に起動している。
Gitでコミットを作成する
起動確認ができたら、バージョン管理を始める。
バージョン管理を行うことで、コードをいつでもこの状態に戻せるようにするのが目的である。
-
Git を初期化して、現在の状態をコミットする。
cd C:\workspace\ecsample
git init
git add .
git commit -m "Spring Boot プロジェクトを作成し、起動確認を完了"
※1. git init は初回のみ実行。
※2. .gitignore は Spring Initializr により自動生成されているため、新規作成は不要。
5. 最初のページを表示する(Hello, Spring!)
src/main/java/com/example/ecsample/配下にcontrollerパッケージを作成する。HomeController.javaを作成し、次を貼り付ける。
package com.example.ecsample.controller;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.ResponseBody;
@Controller
public class HomeController {
@GetMapping("/")
@ResponseBody
public String home() {
return "Hello, Spring!";
}
}
- 変更を保存する(DevTools が有効なら再起動は不要。必要なら再度 Run As > Java Application)。
- ブラウザで
http://localhost:8080/を開き、Hello, Spring!が表示されれば完了である。
Gitでコミットを作成する
Hello, Spring! が表示できたら、ここまでの変更を記録する。
この段階を区切りとして保存しておくことで、今後問題が起きても戻せるようになる。
git add .
git commit -m "HomeControllerを追加し、Hello, Springを表示"
※ 以降の章でも、指示がある箇所で、同じ手順でコミットを取ること。 Git の操作説明はこの章以降では省略する。
6. これから実装する機能一覧(全体像)
| 機能名 | 概要 | 実装予定章 |
|---|---|---|
| トップページ表示 | / にトップを表示 | 02 |
| 商品詳細ページ | /product/{id} を表示 | 03 |
| 商品一覧表示 | Controller→View 連携 | 04 |
| 共通レイアウト | ヘッダー/フッターのフラグメント化 | 05 |
| ユーザ登録フォーム | 入力送信と受け取り | 06 |
| 入力値検証 | エラー表示と検証 | 07 |
| Service 層導入 | ビジネスロジック分離 | 08 |
| DB 連携(MyBatis) | 商品一覧・詳細取得 | 09 |
| カート機能 | セッション保持 | 10 |
| ログイン機能 | 認証・認可 | 11 |
| 購入処理 | 注文保存と完了画面 | 12 |
| 検索機能 | MVC〜DB 総復習 | 13 |
7. URL 一覧(予定)
| 画面名 | URL | 説明 |
|---|---|---|
| トップ | / | 商品一覧への導線 |
| 商品一覧 | /products | 一覧表示 |
| 商品詳細 | /product/{id} | 詳細表示 |
| ユーザ登録 | /register | 新規登録フォーム |
| ログイン | /login | 認証フォーム |
| カート | /cart | 追加・削除・購入へ |
| 注文完了 | /order/complete | 確定後の完了表示 |
8. テーブル一覧(予定)
| テーブル | 主なカラム | 概要 |
|---|---|---|
users | id, name, email, password | 会員 |
products | id, name, price, description | 商品 |
orders | id, user_id, created_at | 注文 |
order_items | id, order_id, product_id, quantity | 注文明細 |
まとめ
- Initializr で ZIP を作成し、Eclipse へ Existing Maven Projects で取り込んだ。
HomeControllerを追加し、/でHello, Spring!を表示した。- 次章では
@Controllerと@GetMappingによるテンプレート表示へ進む。