JSPではサーブレット側の処理を記載していないと
値が渡せないので、画面側のデザインが値ありで確認しにくかったりしていましたが、
Thymeleafでは値がある場合、ない場合の動作を切り分けられる点、
また便利なタグが多い点から利用してみます。
-
src/main/webapp/WEB-INF/spring/appServlet/servlet-context.xml
-
コントローラーの処理終了後に呼び出される画面用ファイルの指定
この部分を変更します。【変更前】
<beans:bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"> <beans:property name="prefix" value="/WEB-INF/views/" /> <beans:property name="suffix" value=".jsp" /> </beans:bean>
【変更後】
<beans:bean id="templateResolver" class="org.thymeleaf.templateresolver.ServletContextTemplateResolver"> <beans:property name="prefix" value="/WEB-INF/templates/" /> <beans:property name="suffix" value=".html" /> <beans:property name="templateMode" value="HTML5" /> </beans:bean> <beans:bean id="templateEngine" class="org.thymeleaf.spring3.SpringTemplateEngine"> <beans:property name="templateResolver" ref="templateResolver" /> </beans:bean> <beans:bean class="org.thymeleaf.spring3.view.ThymeleafViewResolver"> <beans:property name="characterEncoding" value="UTF-8" /> <beans:property name="templateEngine" ref="templateEngine" /> </beans:bean>
-
コントローラーの処理終了後に呼び出される画面用ファイルの指定
-
pom.xml
「dependencies」タグの中に下記内容を追加します。-
Thymeleafライブラリー
<!-- Thymeleaf --> <dependency> <groupId>org.thymeleaf</groupId> <artifactId>thymeleaf-spring3</artifactId> <version>2.1.2.RELEASE</version> </dependency>
-
Thymeleafライブラリー