maven依赖
<dependency>
<groupId>org.freemarker</groupId>
<artifactId>freemarker</artifactId>
<version>2.3.31</version>
</dependency>
<!--如果id="freemarkerConfigurer"这个bean中属性无法解析添加-->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context-support</artifactId>
<version>5.3.14</version>
</dependency>
配置文件
spring-mvc.xml
<!-- FreeMarker模板路径 -->
<bean id="freemarkerConfigurer"
class="org.springframework.web.servlet.view.freemarker.FreeMarkerConfigurer">
<!--模板文件存放位置-->
<property name="templateLoaderPath" value="/WEB-INF/view"/>
<property name="freemarkerVariables">
<map>
<entry key="xml_escape" value-ref="fmXmlEscape"/>
</map>
</property>
<property name="defaultEncoding" value="utf-8"/>
<property name="freemarkerSettings" ref="freemarkerConfig"/>
</bean>
<!--配置freemarker初始化文件位置-->
<bean id="freemarkerConfig" class="org.springframework.beans.factory.config.PropertiesFactoryBean">
<property name="location" value="classpath:freemarker.properties"/>
</bean>
<bean id="fmXmlEscape" class="freemarker.template.utility.XmlEscape"/>
<!-- 配置freeMarker视图解析器 -->
<bean id="viewResolver"
class="org.springframework.web.servlet.view.freemarker.FreeMarkerViewResolver">
<property name="suffix" value=".ftl"/>
<!--解析优先级-->
<property name="order" value="0"/>
<property name="contentType" value="text/html;charset=UTF-8"/>
</bean>
freemarker.properties
classic_compatible=true
whitespace_stripping=true
template_update_delay=1
locale=zh_CN
default_encoding=utf_8
url_escaping_charset=utf_8
date_format=yyyy-MM-dd
time_format=HH:mm:ss
datetime_format=yyyy-MM-dd HH:mm:ss
number_format=0.######
output_encoding=UTF-8
多视图解析配置
只需在spring-mvc.xml中多添加一个解析器,并设置解析优先级
这个属性,value越小优先级越高
<!--jsp视图解析器-->
<bean id="internalResourceView" class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="prefix" value="/WEB-INF/jsp/"/>
<property name="suffix" value=".jsp"/>
<!--解析优先级-->
<property name="order" value="1"/>
</bean>
Freemarker 视图解析配置详解
本文介绍了如何配置Freemarker视图解析,包括maven依赖的添加,配置文件的设置,以及在spring-mvc.xml中进行多视图解析配置的详细步骤,特别强调了解析优先级的设定,通过调整value值可以控制解析器的优先级。
696

被折叠的 条评论
为什么被折叠?



