1、maven項目引入freemark相關jar包
freemaker是以個模板引擎,可以根據提供的數據和創建好的模板,去自動的創建html靜態頁面。所以在返回html視圖時可以用這個引擎結合數據生成html靜態頁面。
org.springframework
spring-context-support
5.0.7.RELEASE
org.freemarker
freemarker
2.3.28
注意freemarker版本,如果版本過低的話可能會有java.lang.NoSuchMethodError: freemarker.template.Configuration.(Lfreemarker/template/Version;)這樣的報錯
2、freemarker.properties
在src/main/resources下新建freemarker.properties配置文件,主要為了解決freemarker返回HTML頁面中文亂碼問題
tag_syntax=auto_detect
template_update_delay=60
default_encoding=UTF-8
output_encoding=UTF-8
locale=zh_CN
date_format=yyyy-MM-dd
time_format=HH:mm:ss
datetime_format=yyyy-MM-dd HH:mm:ss
classic_compatible=true
template_exception_handler=ignore
3、配置視圖解析器
在springmvc.xml中配置jsp、html的視圖解析器。注意一點是,InternalResourceViewResolver必須總是賦予最低的優先級(最大的order值),因為不管返回什么視圖名稱,它都將解析視圖。如果它的優先級高于其它解析器的優先級的話,它將使得其它具有較低優先級的解析器沒有機會解析視圖。
class="org.springframework.beans.factory.config.PropertiesFactoryBean">
class="org.springframework.web.servlet.view.freemarker.FreeMarkerConfigurer">
/WEB-INF/html/
class="org.springframework.web.servlet.view.freemarker.FreeMarkerViewResolver">