spring-bootを使って簡単なWebアプリを作成する

spring-boot

環境

・eclipse Photon
・java8

プロジェクトの作成

まずファイル→新規→その他→Spring Boot→Springスタータープロジェクトをクリックします。
下のような画面が表示されるので任意にアプリケーション名を入力して「次へ」をクリック
※今回はgradleを選択しました。

次に使用する依存関係を選択します。
今回は簡単なWebアプリなのでSpringWebのみのチェックでよいです。
※PostgreSQLとの接続はpostgreSQL Driverを選択したり、画面でThymeleafを使うならそちらを選択するなど作りたいWebアプリに合わせてチェックkを入れます。

これで「OK」を押すとWebプロジェクトが作成されます。

画面の表示

まずは、src/main/java/{作成したパッケージ}の下にindex.javaを作成します(どこでも大丈夫ですがすでにあるパッケージに作成しました)
・index.java

package com.lmproject.application;

import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.servlet.ModelAndView;

public class index {

	/**
	 * @param mv
	 * @return topページ
	 */
	@RequestMapping(value="/", method=RequestMethod.GET)
    public ModelAndView root(ModelAndView mv) {
        mv.setViewName("index");
        return mv;
    }
}

mv.setViewName(“index”);でresource/templates直下にあるhtmlファイルを参照してくれます。
ModelAndViewで画面にパラメータを渡したりすることができます。
@RequestMapping(value=”/”, method=RequestMethod.GET)でvalue=”/”でURLからアクセスするURLを指定できます。
method=RequestMethod.GET、method=RequestMethod.POSTでGET、POST処理を選択できます。

次に表示するhtmlファイルを作成します。
作る場所はresource/templatesの直下にindex.htmlを作成します。
・index.html

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Hello Spring Boot</title>
</head>
<body>
<h1>Hello Spring Boot</h1>
</body>
</html>

「Hello Spring Boot」と表示するだけの画面です。

アプリケーションの起動

gradleビューがあるならgradle→{プロジェクト名}→application→boot runをダブルクリックでアプリケーションが起動します。
※portはデフォルトで8080なのですでに起動しているなら起動しているアプリケーションを止めてください。

下のような画面がコンソールに表示されたら起動します。

ブラウザを起動し、「http://localhost:8080/」を検索すると下のような画面が表示されます。

以上、SpringBootを使用してWebアプリケーションを作成してみました。
SpringBootは、ブラウザで表示するWebアプリからバッチの機能も備えているなど様々な用途で使用ができるとても汎用性が高い人気のJavaフレームワークなのでいろんなアプリを作成していきたいと思います。