この記事では、Spring Bootの環境構築について説明します。後の記事でWebアプリケーションを作るための下準備を行います。
まずは2019以降のEclipseのJava Full Editionをインストールします。2019以降のEclipse(Java Full Edition)をインストールすると、LombokやSpring Bootの設定を省略できるからです。本記事では、Eclipse 2023(Java Full Edition)をインストールします。
もちろん、最新バージョンのEclipseをインストールしてもらってOKです。
■ Eclipseのインストール
この節では、Eclipseをインストールします。Pleiades(プレアデス)という日本語版のEclipseを提供しているサイトからEclipseをダウンロードします。
まずは、Pleiadesのサイトにアクセスしてください。そして、Eclipse2023をクリックしてください。
[Pleiadesのサイト]
お使いのOSの「JavaFull Edition」をクリックします。

OSによってその後のインストール手順は異なりますが、表示される手順に従っていけばEclipseをインストールできます。
■ Spring Bootプロジェクトの作成
それではSpring Bootのプロジェクトを作りましょう。プロジェクト作成の際にライブラリをダウンロードするため、インターネットに接続している必要があります。
Eclipseのパッケージ・エクスプローラーの「新規Springスターター・プロジェクトの作成」をクリックします。Spring Initializrが起動するので、それを使ってSpring Bootプロジェクトを作成します。

補足:Spring Initializrとは
Spring Initializrとは、Spring Bootプロジェクトの雛形を簡単に、素早く作成するためのサービスです。インターネットからでも利用できますが、EclipseなどのIDE(統合開発環境)でも使用できます。
Spring Bootプロジェクトの初期設定をします。以下の画面の通り入力します。

次に、プロジェクトで使う機能(フレームワークやライブラリ)を選択します。選択する内容は、次の図と表を参照してください。これらの機能を選択したあと、「完了」ボタンをクリックしてください。ライブラリなどをダウンロードするため、しばらくするとプロジェクトが作成されます。

※ なお、Spring Bootのバージョンは、デフォルトで最新バージョンが指定されます。Spring Bootのバージョンはあとから変更できます。
追加する依存関係(ライブラリなど)は以下の通りです。
- Spring Boot DevTools
- Lombok
- JDBC API
- Spring Data JDBC
- H2 Database
- Thymeleaf(タイムリーフ)
- Spring Web
※ Spring Bootのバージョンによって、依存関係の名称が変わることがあります。
ここで、追加した機能の概要を説明しておきます。
・ Spring Boot DevToolsとは
Spring Boot DevToolsとは、開発効率を上げるための補助ツールです。これがあると、Webアプリケーションを修正した際にTomcatを自動で再起動してくれます。例えば、Webアプリケーションを実行中にバグを発見し、Javaのソースコードを修正します。その場合、Tomcatを再起動しないと修正内容がWebアプリケーションに反映されません。修正量が少しだけなのにTomcatを再起動するのはちょっと面倒です。
Spring Boot DevToolsを入れておくと、ソースコードを修正して保存した瞬間、Tomcatを自動で再起動してくれます。再起動の操作が減るため、開発効率を上げることができます。
・ Lombokとは
Lombokを使うとgetter/setterなどのボイラープレートコードを自動生成できます。ボイラープレートコードとは、複数の箇所で繰り返される定型的なコードのことです。例えばgetter、setter、コンストラクタが代表的なボイラープレートコードです。
クラス内のフィールド名を修正することはよくあります。ですが、それによりgetter、setterも修正しなければいけません。これでは、アプリケーションで実現したい機能の開発とは関係ないことをやらなければいけません。
ですがLombokを使えば、ボイラープレートコードを自動生成できます。そのため、getterやsetterなどをわざわざ作る必要もありません。Lombokはとても便利なため、ほとんどの開発現場で使われています。
・ JDBC API, Spring Data JDBCとは
JDBCを使ってSQLを実行できるようになります。JDBCとは、Javaでリレーショナルデータベースを操作するためのAPIです。
・ H2 Databaseとは
H2 Databaseとは、インメモリ型のデータベースです。全てのデータをメモリ上に持っているため、アプリケーションを再起動するとデータが消えます。また、セットアップが不要なためすぐに使えます。これらの特徴から、学習やテスト用のデータベースに向いています。
・ Thymeleaf(タイムリーフ)とは
Thymeleafとは、Spring Bootが推奨するHTMLのテンプレートエンジンです。テンプレートエンジンとは、HTMLのテンプレートと表示させたいデータを合成して、HTMLを作成してくれる機能のことです。
・ Spring Web
Spring MVC Webを使って、Webアプリケーションの開発ができるようになります。
次回は、この作成したプロジェクトを使って、Hello Worldを表示する画面がいかに簡単に作れるかを紹介します。
投稿のやる気につながるため、記事の内容が少しでも良いと思ったら、スキやフォローしてくださいね。
参考)下記の書籍
