Spring Bootの使い方を学ぼう
Spring Bootは、本番レベルのSpringアプリケーションの作成が簡単にできるフレームワークです。しかしSpring Bootを使ってみたいと思う人の中には、具体的な始め方が分からずお困りの方もいらっしゃるのではないでしょうか。
本記事ではSpring Bootの入門編として、環境構築や基本的なSpring Bootの使い方を丁寧に解説いたします。Spring Bootをこれから始めてみたい方は、ぜひ参考にしてください。
Spring Bootを使う前にすべきこと
Spring Bootを使うには、環境構築が必要です。環境構築の方法はいくつかありますが、今回はIDE(統合開発環境)のダウンロードをする想定で解説します。ちなみに、Spring Bootの環境構築はそれほど手間はかかりませんので、本記事を読み進めながら実際に手を動かしてみましょう。
バージョンの確認
環境構築をする前に、すでにIDEをダウンロードされている方やJavaを使用されている方は、Javaのバージョンを事前に確認して下さい。
現在Spring Bootは「Spring Boot3.0」がリリースされていますが、このSpring Boot3.0ではJava17が必要です。Spring Boot3.0を使用される場合はJDKのアップグレードが必要ですので気をつけましょう。詳細は参考サイトのリリースノートをご確認ください。
環境構築をする
まずは参考サイトからお好みのIDE(統合開発環境)をダウンロードして、Spring Bootをインストールしてください。
IDEにはいくつか種類がありますが、その中でもPleiades All in Oneは日本語化を行うためのプラグインが既に入っていますので、こちらを選択しましょう。本記事では、Pleiades All in Oneを使用していることを前提に解説を進めます。
ちなみにPleiades All in Oneの中でもFull Editionを使用すれば、JDKのインストールや環境変数の設定が不要です。インストールするだけで環境構築が完了しますので、より簡単にSpring Bootを使用したい方はIDEをインストールしましょう。
また、既にEclipseを使用している場合やLinuxを使用している場合は、プラグイン本体のみをダウンロードします。プラグイン本体のみのインストールをしたい方は、参考サイトからインストールしてください。
【参考】:Spring Initializr クイックスタート 【参考】:Pleiades All in One ダウンロード
SpringBootの使い方
ダウンロードとインストールは無事に完了できたでしょうか。環境構築が完了したら、早速Spring Bootを使い「Hello World」を表示させてみましょう。ここからは、Spring Bootの基本的な使い方を解説します。
Spring Bootで新規プロジェクトを作成する
まず始めに、新規プロジェクトを作ってみましょう。IDEを起動させて新規プロジェクトを作成します。Eclipseの起動後、画面上部のメニューバーからファイル、新規、Spring スターター・プロジェクト(Spring Initializr)の順で選択してください。
するとプロジェクトの設定をする画面が表示されます。基本的にはデフォルトの設定のままプロジェクトを作成することができますが、必要に応じてSpring Bootのバージョンの変更や開発者ツールの追加などが可能です。
設定の確認ができたら、完了ボタンを押してプロジェクトを作成しましょう。ちなみに、このSpring スターター・プロジェクトにはすでにSpring Bootが含まれています。そのためプロジェクトの作成が完了すれば、すぐにコードの記述が可能です。
コードを記述する
プロジェクトが完成すると、パッケージエクスプローラーに必要なリソースが入っているのが分かります。この中の、src/main/java/com/example/demoフォルダの中にある、DemoApplication.javaというファイルを開きましょう。
今回はこのファイルに変更を加えて、処理を追加していきます。実際に変更を加えるサンプルコードが参考サイトにあります。こちらを確認して、ファイルを変更して保存してください。
【参考】:Spring Initializr クイックスタート
実行する
画面上部のツールバーにある実行ボタンをクリックします。実行ボタンをクリックします。するとポップアップ画面が出ますので、Spring Bootアプリケーションを選択して下さい。
画面下部のコンソールにSpringの文字が出ることが確認できます。これでSpringが開始されたことが分かりました。
Spring BootはWebサーバにApacheTomcatを使用しており、localhostのポート番号8080でリクエストを受付けています。そのためブラウザで http://localhost:8080/hello にアクセスすれば実行結果である「Hello World!」が表示されているはずです。
つまりブラウザで「Hello World!」が確認できれば、処理の追加が正しく行われたことになります。
Spring Bootの入門コンテンツを活用しよう
Spring Bootの環境構築から実行まで、問題なく操作できましたでしょうか。基本的に新しくSpring Bootのプロジェクトを立ち上げる場合には、Spring スターター・プロジェクトを立ち上げてコードを記述していく流れとなります。
しかし、Spring Bootはあらかじめ入門コンテンツが用意されています。入門コンテンツの種類は沢山ありますので、ご自身の勉強したい内容にあわせて入門コンテンツを活用してみましょう。
種類にもよりますが、1つあたりのコンテンツはおよそ15分程度で取り組める内容です。ぜひチャレンジしてみましょう。
REST APIを作成しよう
先ほどご紹介した入門コンテンツのうち、「REST API の作成」について解説をします。こちらのコンテンツも15分ほどで完了しますので、ぜひ気軽に試してください。
入門コンテンツをインポートする
Spring Bootの入門コンテンツは、IDE上でインポートが可能です。先述でEclispeのメニューバーからSpring スターター・プロジェクト(Spring Initializr)を選択しましたが、今回はファイル・新規・Spring 入門コンテンツのインポートの順で選択しましょう。
選択すると、検索窓が出てきますのでこちらに「Rest Service」と入力し選択してください。ちなみに、このタイミングでビルドタイプを選択できますので、MavenまたはGradleから好きな方を選択してみましょう。
【参考】:REST API の作成
ソースを確認する
まずは、gs-rest-service-completeプロジェクトの中の、src/main/java/com/example/restserviceフォルダを見てみましょう。すると、Greeting.javaとGreetingController.javaというファイルがあることが分かります。
入門コンテンツをインポートした時点で、すでにコードの記述がされているはずなので、特にここでの操作は必要ありません。また、上記のファイルはそれぞれ異なる役割がありますので、ここからは各ファイルの中身について詳しく解説します。
■Greeting.java こちらは、GETリクエストの処理で必要なオブジェクトを定義するクラスです。クラスの中には、コンストラクターやデータのフィールドが含まれます。
■GreetingController.java Spring Bootにはリソースコントローラーというものがあり、SpringはHTTPリクエストをコントローラーのアノテーションを使って処理しています。
例えば、今回のファイルの中には「@GetMapping」というアノテーションが使われていますが、これはGETリクエストがgreetingメソッドにマップされることを保証しています。また、他のマッピングの解説をもっと知りたいという方は、参考サイトのページに解説が記載されていますのでご確認ください。
【参考】:REST API の作成
JARを作成して実行する
各ソースの内容を理解できたら、早速実行して結果を確認します。Mavenの場合、以下のコマンドラインを使用してJARファイルをビルドしてください。
- java -jar target/gs-rest-service-0.1.0.jar
Gradleを使用されている方は、以下のコマンドラインになります。
- java -jar build/libs/gs-rest-service-0.1.0.jar
するとロギング出力が表示され、サービスが起動しますので、サービスが起動したら http://localhost:8080/greeting にアクセスしてください。設定したリストのように、content属性の値が「Hello, User!」になっていれば、正しくサービスが作動しています。
【参考】:REST API の作成
フレームワークを学びスキルアップを目指しましょう
Spring Bootは環境構築が簡単で入門コンテンツも豊富です。また、XMLファイルなどの設定も必要ないため、これからWebアプリケーションを作ってみたい人にとっては取り組みやすいフレームワークといえます。
さらにプログラミングは実際に手を動かして作業しながら考えることが重要ですので、どんどんSpring Bootを使ってみてください。本記事や入門コンテンツなどを活用し、自分の取り組みやすいものから学習を継続していきましょう。
編集部オススメコンテンツ
アンドエンジニアへの取材依頼、情報提供などはこちらから