2018年10月
S M T W T F S
« Sep   Nov »
 123456
78910111213
14151617181920
21222324252627
28293031  

このブログ内を検索

アーカイブ

ATOM RSS2.0
<<>>

2018.10.31

01 仕事

spring bootを使ってみた その1

こんにちは。人材育成担当YNです。

NSさんが「AWSでお手軽WEBサイト構築」という記事書いてますが、動的なWEBサイトは開発しなきゃね、ということで対抗してみました。こちらもお手軽ですよ。
お手軽とはいえ説明がとても長くなってしまいそうなので、最初は簡単なWebページを表示するまでをやってみましょう。

まずは開発環境から。IDEはeclipse使うことにしました。(STS使えよ、という声が聞こえてきますが無視させていただいて。)ビルドはmavenにします。

eclipseにmavenプロジェクトを作成します。quickstartでかまいません。

プロジェクトが出来たらspring bootのライブラリを追加します。pom.xmlを編集しましょう。最初の一歩として簡単なWebページを表示させようと思うのでparentとweb、thymeleafを入れます。Javaのバージョンは1.8とします。
(以下はpom.xmlの抜粋です。)

pom.xml
<properties>
    <java.version>1.8</java.version>
</properties>
<parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>2.0.5.RELEASE</version>
</parent>
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-thymeleaf</artifactId>
</dependency>

ソースコードを修正したらすぐに起動中のアプリに反映してくれるツールも組み込みます。必須ではありませんが入れておくと便利です。

<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
</dependency>

さて、ここからjavaのソースコードになります。
spring bootのアプリケーションとして認識させるためのクラスを作成します。

Application.java
@SpringBootApplication
public class Application {
    public static void main( String[] args ) {
        SpringApplication.run(Application.class, args);
    }
}

次は、リクエストを受け取るコントローラークラスを作成します。サンプルアプリの定番ということでHello Worldを表示させましょう。@RequestMappingが呼び出すURL、returnの文字列が表示するThymeleafテンプレートのファイル名となります。

HelloController.java
@Controller
public class HelloController {
    @RequestMapping("/hello")
    public String hello(Model model) {
        model.addAttribute("message", "Hello World!!");
        return "hello";
    }
}

最後に表示するThymeleafテンプレートを作成します。src/main/resources/templatesに配置します。

hello.html
<!doctype html>
<html xmlns:th="http://www.thymeleaf.org">
 <head>
 <meta charset="UTF-8" />
 <title>Hello World!!</title>
 </head>
 <body>
 <h1 th:text="${message}"></h1>
 </body>
</html>

では動かしてみましょう。Application.javaにmainメソッドがあるので、ここからJavaアプリケーションとして起動します。
起動したら、ブラウザからhttp://localhost:8080/helloにアクセスします。
HelloWorld画面が表示されれば成功です。

これだけでWebページが表示できてしまいました。お手軽ですね。

今日はここまで。次はDBとの連携をやってみます。

このページの先頭へ