前言:本文基於上一篇內容-Spring+SpringMVC項目搭建html
Thymeleaf簡介前端
Thymeleaf是個XML/XHTML/HTML5模板引擎,能夠用於Web與非Web應用。Thymeleaf很大的一個特色就是,它支持使用html格式的文件做爲模版,這個雖然與JSP相比只是一個小改動,可是卻影響很大,由於html文件能夠直接瀏覽器運行查看;Thymeleaf另一大特色就是它的標籤語法,在程序中它的標籤是執行代碼,在程序外經過瀏覽器直接查看html文件時,它的標籤又絲絕不會對內容產生影響,因此非常方便工做中UI、前端、開發之間的合做。我的觀點,僅供參考。java
在SpringMVC環境搭建好後,只須要作一點很簡單的改動就能夠將SP模板替換爲Thymeleaf模板。
web
pom.xml文件修改,配置Thymeleaf模板所需依賴,以及對Spring支持的JAR包依賴spring
<dependency> <groupId>org.thymeleaf</groupId> <artifactId>thymeleaf</artifactId> <version>2.1.4.RELEASE</version> </dependency> <dependency> <groupId>org.thymeleaf</groupId> <artifactId>thymeleaf-spring4</artifactId> <version>2.1.4.RELEASE</version> </dependency>
修改applicationContext-servlet.xml文件配置瀏覽器
<!-- 註釋掉JSP視圖解析器配置 --> <!-- <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"> <property name="prefix" value="/WEB-INF/views/"></property> <property name="suffix" value=".jsp"></property> </bean> --> <!-- Thymeleaf視圖模板引擎配置 --> <bean id="templateResolver" class="org.thymeleaf.templateresolver.ServletContextTemplateResolver"> <property name="prefix" value="/WEB-INF/templates/" /> <property name="suffix" value=".html" /> <property name="templateMode" value="HTML5" /> </bean> <bean id="templateEngine" class="org.thymeleaf.spring4.SpringTemplateEngine"> <property name="templateResolver" ref="templateResolver" /> </bean> <!-- 視圖解析器配置 --> <bean class="org.thymeleaf.spring4.view.ThymeleafViewResolver"> <property name="templateEngine" ref="templateEngine" /> <property name="order" value="1" /> <!-- <property name="viewNames" value="*.html,*.xhtml" /> --> </bean>
好了,改造完成。下面作下小測試,MyTestController.java文件保持不變,根據視圖解析器配置,在目錄/WEB-INF/templates/下建立MyTest.html文件,並引入Thymeleaf的引用,並寫個簡單的標籤測試一下。app
<!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml" xmlns:th="http://www.thymeleaf.org"> <head> <meta charset="UTF-8"></meta> <title>Insert title here</title> </head> <body> <span th:text="Hello">This is MyTest page with Thymeleaf!</span> </body> </html>
至此,打包項目、部署,訪問http://localhost:8080/SpringDemo/myTest,看到頁面顯示着「Hello」,結束。若是想用好Thymeleaf,還少不了要多學習學習它的各類標籤及用法。jsp