環境
Spring 4.0.4
Thymeleaf 2.1.2
Template Engine
SpringのTutorialを進めていたらViewはThymeleafで実装されていた。
もともとJSPでやるつもりはなかったけど、VelocityとかFreeMarkerよりSpringはThymeleafが好きなのかな?ふむふむ。
Mixer2も気になったけど今回はThymeleafを選択!
Thymeleaf
Thymeleafは基本的にHTMLとして使うことができるのでLogicとViewを分担しやすいテンプレ。
あと個人的な感想ですが書きやすいなーと思います。そしてネーミングセンスがすばらしい!笑
Thymeleaf のインストール
Mavenで自動的に取ってきてもらいます。(最新バージョン2.1.2)
<dependencies>
<groupId>org.thymeleaf</groupId>
<artifactId>thymeleaf-spring4</artifactId>
<version>2.1.2.RELEASE</version>
</dependencies>
Thymeleaf の設定(JSP → Thymeleaf)
Servletの設定ファイルを変更
JSP の設定
<bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="prefix" value="/WEB-INF/views/" />
<property name="suffix" value=".jsp" />
</bean>
Thymeleaf の設定
<bean id="messageSource"
class="org.springframework.context.support.ResourceBundleMessageSource" />
<bean id="templateResolver"
class="org.thymeleaf.templateresolver.ServletContextTemplateResolver">
<property name="prefix" value="/WEB-INF/views/" />
<property name="suffix" value=".html" />
<property name="templateMode" value="HTML5" />
<property name="characterEncoding" value="UTF-8" />
</bean>
<bean class="org.thymeleaf.spring4.view.ThymeleafViewResolver">
<property name="templateEngine">
<bean class="org.thymeleaf.spring4.SpringTemplateEngine">
<property name="templateResolver" ref="templateResolver" />
</bean>
</property>
<property name="order" value="1" />
<property name="characterEncoding" value="UTF-8" />
</bean>
idとpropertyは間違えないようにしてください。
あと、TemplateResolverの設定は自分の設定に合わせてください。
これで準備完了!
後はViewをHTMLで作るだけです!