libro
www.tuyano.com
初心者のためのSpring Bootプログラミング入門

JSPによるビューの作成 (1/5)

作成:2014-06-21 10:46
更新:2015-04-23 08:55

■JSPを使えるようにしよう

前回、RestControllerで簡単なテキストを表示するWebアプリの基本を作りました。今回は、テンプレートを使ってビュー(画面表示)を作成し、コントローラーから呼び出して表示させる、ということをやってみましょう。

Groovyでサンプルを作る際にThymeleafというテンプレートエンジンを使ってみましたね。これをそのまま利用してもいいのですが、まぁ全部Javaで作るとなると、やっぱり基本はJSPが慣れてる、という人も多いでしょう。というわけで今回はJSPでビューを作ることにします。

ただし!

最初にいっておきますが、現在のSpring Boot 1.2では、JSPの利用は推奨されていません。Thymeleafなどのテンプレートエンジンを利用することが推奨されています。サーバーサイドJavaにあまり慣れていないユーザーにとって、JSPは一番慣れ親しんでいる技術ですので、ここではしばらくJSPを使いますが、「JSPは、Spring Bootでは使わない方がいい」ということだけは心に留めておいて下さい。


では、以下のように変更を行いましょう。

●pom.xmlの追記
まずは、pom.xmlに必要な情報を記述しましょう。下のリスト欄を見て下さい。今回は、<dependency>タグに「tomcat-embed-jasper」というライブラリを追記しています。

これはSpring Bootが内部で利用しているTomcatサーバーにJasperを追加するものです。Jasperというのは、Tomcatが内部で利用しているJSPエンジンです。これを追加することで、JSPが利用できるようになります。

●src/main/resourcesディレクトリの作成
src」内の「main」フォルダの中に、新しく「resources」というフォルダを作成して下さい。これは、リソース関連のファイルをまとめておくための場所です。

●application.propertiesの作成
作成した「resources」フォルダ内に、「application.properties」というファイルを作成して下さい。そして、下の2行を記述します。
spring.view.prefix: /WEB-INF/views/
spring.view.suffix: .jsp
これは、Spring MVC(Spring Bootで作成するWebアプリで使われているWebアプリケーション開発のフレームワークですね)で使用するビューのプレフィクスサフィクスの設定です。これにより、例えば「hoge」というビューを使おうとすると、自動的に WEB-INF/views/hoge.jsp というファイルが読み込まれるようになります。

※プログラムリストが表示されない場合

AddBlockなどの広告ブロックツールがONになっていると、プログラムリスト等が表示されない場合があります。これらのツールをOFFにしてみてください。

●プログラム・リスト●

※pom.xmlの<dependencies>タグ内に追加
<dependency>
    <groupId>org.apache.tomcat.embed</groupId>
    <artifactId>tomcat-embed-jasper</artifactId>
    <scope>provided</scope>
</dependency>


※src/main/resources/application.propertiesの内容

spring.view.prefix: /WEB-INF/views/
spring.view.suffix: .jsp

※関連コンテンツ

「初心者のためのSpring Bootプログラミング入門」に戻る