前回、Spring Bootの強力な機能であるAuto-ConfigurationとStarter POMsについて学びました。Spring Bootは、私たちを面倒な設定作業から解放してくれる最高のパートナーです。
今回は、そのSpring Bootプロジェクトを、最も簡単かつ標準的な方法で作成するためのウェブツール「Spring Initializr (イニシャライザ)」の使い方を、ハンズオン形式で解説します。
1. Spring Initializrとは?
Spring Initializrは、ウェブブラウザ上でいくつかの項目を選択するだけで、Spring Bootアプリケーションの最小限必要な構成ファイル(Mavenなら pom.xml、Gradleなら build.gradle やメインクラスなど)が揃った**プロジェクトの雛形(テンプレート)を圧縮ファイル(ZIP)**としてダウンロードできるサービスです。
これにより、プロジェクトの初期設定にかかる時間をゼロにできます。
2. プロジェクト作成ハンズオン
実際にSpring Initializrを使って、簡単なWebアプリケーションの雛形を作成してみましょう。
2-1. Initializrへアクセス
以下のURLにアクセスしてください。
Spring Initializr
2-2. プロジェクトの基本情報の設定
ウェブサイトの左側(Project 部分)で、アプリケーションの基本的な設定を行います。
| 項目名 | 設定値 | 意味 |
| Project | Gradle – Groovy | ビルドツールを選択します。この講座ではモダンなGradleを使用します。 |
| Language | Java | 使用言語はJavaを選択します。 |
| Spring Boot | 安定版の最新(例: 3.2.x) | 最新の安定版を選択します。 |
| Group | com.example | 会社や組織を表すドメイン名を逆順にしたもの。 |
| Artifact | demo | プロジェクト名(成果物名)です。任意で変更できます。 |
| Package name | com.example.demo | GroupとArtifactから自動生成されます。 |
| Packaging | Jar | 組み込みサーバー(Embedded Server)で動かすため Jar を選択します。 |
| Java | 17 | LTS(長期サポート)バージョンのJava 17を選択します。 |
2-3. 依存関係(Dependencies)の追加
ウェブサイトの右側にある「ADD DEPENDENCIES」ボタンをクリックして、このプロジェクトで必要な機能を決めます。
今回はWebアプリケーションを作成するため、以下の二つを追加します。
- Spring Web: Webアプリケーション(RESTful APIを含む)を構築するための基本セットです。TomcatとSpring MVCの設定が自動で組み込まれます。
- Lombok: Java開発で定型的なコード(getter/setterなど)を自動生成してくれる便利なライブラリです。
2-4. プロジェクトの生成とダウンロード
全ての設定が終わったら、画面下部にある緑色の「GENERATE」ボタンをクリックします。
設定内容に基づいたZIPファイルがダウンロードされます。
3. プロジェクトの構造確認
ダウンロードしたZIPファイルを解凍し、前回までに準備したIntelliJ IDEAなどのIDEで開いてください。IDEが build.gradle ファイルを読み込み、必要なライブラリを自動でダウンロードし始めます。
プロジェクトのフォルダ構造は以下のようになっているはずです。
demo/
├── .gradle/
├── build.gradle // ① ビルド設定ファイル(依存関係、Javaバージョンなど)
├── gradlew // Gradle実行用スクリプト
└── src/
├── main/
│ ├── java/
│ │ └── com/example/demo/
│ │ └── **DemoApplication.java** // ② 実行用メインクラス
│ └── resources/
│ ├── application.properties // ③ アプリケーション設定ファイル
│ └── static/
└── test/
3-1. build.gradle の確認
特に build.gradle を見てみましょう。選択した依存関係が正しく記述されていることが確認できます。
Groovy
dependencies {
// Spring Initializrで選択した Web Starter が含まれている
implementation 'org.springframework.boot:spring-boot-starter-web'
// Lombokライブラリ。コンパイル時のみ使用
compileOnly 'org.projectlombok:lombok'
// ... その他の依存関係
}
3-2. メインクラスの確認
DemoApplication.java を開くと、前回学んだ @SpringBootApplication アノテーションが付与されたシンプルなクラスがあることがわかります。
Java
package com.example.demo;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
public class DemoApplication {
public static void main(String[] args) {
SpringApplication.run(DemoApplication.class, args);
}
}
4. プロジェクトの実行
この状態でも、Spring BootアプリケーションはWebサーバー(Tomcat)を組み込んで起動できます。
IntelliJ IDEAなどのIDEで、DemoApplication.java の main メソッド横にある**実行ボタン(▶)**を押してください。
コンソールに以下のようなログが出力されれば、Webサーバーが起動しています。
... Started DemoApplication in X.XXX seconds (process running for X.XXX)
... Tomcat initialized with port(s): 8080 (http)
この時点では、どのURLにアクセスしても何も定義していないためエラーになりますが、これでアプリケーションの**「土台」**は完全に動作しています!
✅ 本日のまとめ
- Spring Initializr を使って、Spring Bootプロジェクトの雛形を簡単に作成した。
- プロジェクトの構成として、Gradle、Java 17、Spring Web、Lombokを選択した。
- メインクラスには
@SpringBootApplicationが付いており、これが全ての自動設定を有効にしている。 - プロジェクトを起動し、Webサーバー(Tomcat)がポート 8080 で正常に立ち上がったことを確認した。
🔔 次回予告
アプリケーションの土台ができたので、いよいよWebアプリケーションの核である Spring Web MVC に入っていきます。
次回は、ユーザーからのリクエストを受け付ける**@RestController**(コントローラ)の定義方法と、URLとメソッドを結びつける @RequestMapping の使い方を学び、実際にブラウザに「Hello Spring!」と表示させる最初のAPIを作成します。
次回:【第15回】Spring Web MVC (1) – @RestControllerとルーティング にご期待ください!


コメント