本系列文章主要索引詳情?點擊查看
?現(xiàn)在我們已經(jīng)搭建好了Web框架舷嗡,下面我們開始將第一個頁面插入到我們的應用中來官套。
工具
IntelliJ IDEA 16
JDK 1.8
Maven 3.5
Tomcat 1.8
第一個頁面
視圖通常會與某種模板方言關聯(lián),這種模板允許遍歷模型中的內(nèi)容,流行的模板方言包括JSP、FreeMarker冲呢、Thymeleaf。在此招狸,我們將使用Thymeleaf碗硬,Thymeleaf是一個模板引擎,它的成功在很大程度上要歸因于對用戶友好的語法(它幾乎就是HTML)以及擴展的便利性瓢颅。
關于Thymeleaf與Spring集成有一個很好的入門指南,參見:http://www.thymeleaf.org/doc/tutorials/2.1/thymeleafspring.html
1弛说、添加Thymeleaf模板引擎
閑言少敘挽懦,下面我們開始將thymeleaf依賴添加到項目中,這樣我們就能啟動Thymeleaf模板引擎了木人,Maven環(huán)境下添加如下:
打開pom.xml,編輯如下圖所示
2信柿、添加頁面
現(xiàn)在講第一個頁面添加到項目中冀偶,在src/main/resources/templates中新建一個HTML頁面,并將其命名為resultPage.html渔嚷,添加后目錄結(jié)構(gòu)如下
打開resultPage.html进鸠,編輯文件
3、修改Controller類
此時HelloController類必須要導航至我們新建的視圖形病,而不是再展示簡單的文本客年。為了完成該功能,我們需要移除@CRestController注解漠吻。這樣做完之后量瓜,如果再次返回字符串的話,就會高數(shù)Spring MVC要將這個字符串隱射為視圖名途乃,而不是在響應中直接展現(xiàn)特定的模型绍傲。
我們的控制器將會變?yōu)槿缦滤?/p>
4、測試運行
現(xiàn)在耍共,控制器會將用戶的請求轉(zhuǎn)移到resultPage的視圖中烫饼,ViewResolver接口會將這個名字與我們的視圖進行關聯(lián)。
啟動應用并訪問: http://localhost:8080/he
我們將看到頁面
說明:
th:text的值放在兩個豎線中間试读,這意味著文本中所有的值都會連接在一起杠纵。
如果沒有添加兩個豎線則訪問時會出現(xiàn)如下異常
對于Web設計人員來說,Thymeleaf有一項很大的優(yōu)勢鹏往,那就是在服務器沒有運行的時候淡诗,模板中所有的動態(tài)內(nèi)容都可以采用一個默認值(如resultPage.html中的 <span>標簽中的文本“hello html”)。資源URL可以采用相對的路徑來指定伊履,每個標簽都可以包含占位符韩容,在前面的樣例中,如果是在應用的上下中唐瀑,那么文本“hello html”不會顯示群凶,但是如果直接再Web瀏覽器中打開這個文件的話,那么它就會顯示“hello html”哄辣,而不會顯示“hello thymeleaf”了请梢。