Contents
Javaバージョンの確認方法
Javaがインストールされているかは、コマンドラインで java -version を実行することで簡単に確認できます。出力されるバージョン情報から、17以降であることを確認してください。
-
Windows
PowerShellまたはコマンドプロンプトを開き、java -versionを入力します。 -
macOS/Linux
Terminalを開き、同様にjava -versionを実行します。
Javaがインストールされていない場合やバージョンが古い場合は、公式サイトから最新版をダウンロードしてください。
JDKのインストール手順(Windows/macOS/Linux別)
Windows
- Azul Zulu または OpenJDKのサイトから Java 17 をダウンロードします。
- ダウンロードしたファイルをダブルクリックし、インストーラーを起動します。
- インストール先を選択し、完了ボタンを押下します。
macOS
- Azul Zulu からパッケージをダウンロードします。
.dmgファイルを開き、JDKを/Library/Java/JavaVirtualMachinesに配置します。
Linux(Ubuntuなど)
-
終端で以下を実行し、リポジトリを追加します。
bash
sudo apt update
sudo apt install openjdk-17-jdk -
インストール後、
java -versionで確認してください。
環境変数の設定
.bashrc,.zshrcなどにexport PATH=$JAVA_HOME/bin:$PATHを追加し、環境変数を反映させます(例:$JAVA_HOME=/usr/lib/jvm/java-17-openjdk-amd64)。
Spring Initializrでプロジェクトテンプレートを作成する
Spring Bootのプロジェクト作成には、公式ツール「Spring Initializr」が非常に便利です。Webブラウザ上で簡単な設定を行い、すぐにプロジェクトファイルをダウンロードできます。
Spring Initializrの特徴と使い方
Spring Initializrは、プロジェクト構造や依存関係を自動生成する公式ツールで、以下のような機能があります。
- テンプレート選択: プロジェクト型(Gradle/Maven)を選べる
- 依存関係追加: Spring Web、Thymeleafなど必要なライブラリが選べる
- 自動生成: 一括でプロジェクトファイルを作成してZIPダウンロード可能
使用手順は以下の通りです。
- https://start.spring.io/ を開く
- Project から GradleかMavenを選択
- Language を Java(Java 17以降対応)に設定
- Dependencies から必要なライブラリを追加(例: Spring Web)
- 下部の Generate ボタンをクリックし、ZIPファイルをダウンロード
必要な依存関係の選定ポイント
Spring Initializrでは「Dependencies」セクションでプロジェクトに含めるライブラリを選べます。初心者向けには以下がおすすめです。
- Spring Web: Webアプリケーションを作成するための基本ライブラリ
- Thymeleaf: テンプレートエンジン(Web開発の際によく使われます)
- Spring Data JPA: データベース操作を行うためのライブラリ
注意事項
依存関係は必要最小限に留めることをおすすめします。不要なライブラリは後で追加できます。
GradleとMavenどちらでプロジェクトを作成すべきか?
Spring BootではGradleとMavenの両方が使用可能ですが、初学者にとってはGradleの方が扱いやすいです。以下にそれぞれの特徴を比較します。
Build Tool選択時の考慮要素
| 項目 | Gradle | Maven |
|---|---|---|
| ファイル構造 | build.gradle で管理 |
pom.xml で管理 |
| 依存関係の追加 | Kotlin DSLやGroovy言語で記述可能 | XML形式で記述される |
| 初期設定の難易度 | 初心者向けにシンプル | 標準的な構成だが、XMLの理解が必要 |
Gradleは柔軟性が高く、学習コストも低いですが、企業での使用率はMavenに比べて少なくなっています。最新トレンドでは両方の利用が増えています(2023年調査ではMaven: 62%, Gradle: 58%)。
初期設定後の違いの具体例
以下に、ライブラリ追加時の手順を比較します。
-
Gradleでの依存関係追加
build.gradleに以下を追加し、./gradlew buildを実行します。
groovy
dependencies {
implementation 'org.springframework.boot:spring-boot-starter-thymeleaf'
} -
Mavenでの依存関係追加
pom.xmlに以下を追加し、mvn clean installを実行します。
xml
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-thymeleaf</artifactId>
</dependency>
Gradleはコマンドが簡単で、構成ファイルも短いのが特徴です。
生成されたプロジェクトファイルの構造と基本設定
Spring InitializrでダウンロードしたZIPファイルを解凍すると、以下のようなフォルダ構造になります。この構造を理解しておくことで、後々の開発がスムーズに進みます。
main/javaとresourcesフォルダーの役割
src/main/java/: Javaソースコードを置く場所です。初期プロジェクトではcom.example.demo.Applicationというクラスがあり、起動用メソッドが定義されています。src/main/resources/: リソースファイル(テンプレートや設定ファイル)が保存されます。
以下は典型的なフォルダ構造の例です。
|
1 2 3 4 5 6 7 8 |
├── src │ ├── main │ │ ├── java │ │ └── resources │ └── test │ └── java └── build.gradle(またはpom.xml) |
ポイント
src/main/java以下のパッケージ構成は、プロジェクトの規模に応じて変更可能ですが、初期設定ではcom.example.demoをベースにします。
application.propertiesの基本設定
application.properties ファイルはSpring Bootアプリケーションの挙動を制御するための設定ファイルです。以下の例のように、ポート番号やログレベルなどを変更できます。
|
1 2 3 |
server.port=8081 logging.level.root=WARN |
- server.port: 実行時に使用されるポート番号(デフォルトは8080)
- logging.level.root: ログの出力レベル(DEBUG/INFO/WARN/ERRORなど)
IDEへのインポートと最初の実行まで
ダウンロードしたプロジェクトをIDEにインポートし、実際にSpring Bootアプリケーションを動かしてみましょう。ここではIntelliJ IDEAとVS Codeの手順を紹介します。
IntelliJ/VSCodeでのプロジェクト読み込み手順
- ZIPファイルを解凍し、フォルダを開きます(例:
demoフォルダ)。 - IntelliJ は
File > Openからフォルダを選択し、Import Project をクリックします。 - VS Code は拡張機能「Java Extension Pack」をインストール後、フォルダを開きます。
Gradle/Mavenの自動構築
IntelliJではプロジェクト読み込み時に自動でGradle/Mavenが実行され、依存関係が解決されます。VS Codeでも自動的に依存関係がロードされます。
Hello Worldサンプルの実行確認
プロジェクトを起動するには、以下のようにします。
-
IntelliJ
Run > Run 'Application.main()'を選択し、Spring Bootアプリケーションを起動します。 -
VS Code
メインクラス(例:Application.java)で右クリック →Runを選択します。
起動後、ブラウザに http://localhost:8080 を入力すると、デフォルトの「Hello World」画面が表示されます。
確認方法
コンソールに出力されるログを見てください。Started Application in ... secondsと表示されたら成功です。
プロジェクト作成後の補足設定と次にやること
Spring Bootプロジェクトの初期構築が完了したら、次のステップとして自動生成されたクラス確認や簡単なAPI実装を行ってみましょう。
自動生成されたmainクラスの確認
Spring Initializrで作成された Application.java には、以下のようなコードがあります。
|
1 2 3 4 5 6 7 |
@SpringBootApplication public class Application { public static void main(String[] args) { SpringApplication.run(Application.class, args); } } |
このクラスはアプリケーションを起動するためのエントリポイントです。@SpringBootApplication アノテーションにより、コンポーネントスキャンや設定読み込みが自動的に行われます。
簡単なAPI実装サンプル
初期プロジェクトにREST APIを1つ追加してみましょう。以下のように DemoController.java を作成します(src/main/java/com/example/demo/ に保存)。
|
1 2 3 4 5 6 7 8 |
@RestController public class DemoController { @GetMapping("/api/hello") public String sayHello() { return "Hello, Spring Boot!"; } } |
起動後、http://localhost:8080/api/hello にアクセスすると、「Hello, Spring Boot!」と表示されます。
次にやることのまとめ
- データベース接続設定(Spring Data JPAなど)
- テンプレートエンジン(Thymeleaf)でのHTML作成
- アプリケーションの配布方法(JAR化など)