前提是spring项目
1.首先在pom.xml中导入两个包
<!-- https://mvnrepository.com/artifact/org.springframework/spring-context-support -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context-support</artifactId>
<version>5.1.3.RELEASE</version>
</dependency>
<!-- https://mvnrepository.com/artifact/org.freemarker/freemarker -->
<dependency>
<groupId>org.freemarker</groupId>
<artifactId>freemarker</artifactId>
<version>2.3.28</version>
</dependency>
2.在resources目录下配置freemarker.properties,内容如下:
#FreeMarker settings:
#0 is for development only! Use higher value otherwise.
template_update_delay=0
locale=zh_CN
default_encoding=UTF-8
number_format=0.##########
date_format=yyyy-MM-dd
3.在spring-web.xml文件中配置freemarker的bean,内容如下:
<!-- 设置freeMarker的配置文件路径 -->
<bean id="freemarkerConfiguration" class="org.springframework.beans.factory.config.PropertiesFactoryBean">
<property name="location" value="classpath:freemarker.properties"/>
</bean>
<!-- 定义视图文件解析 html专用-->
<bean id="freemarkerConfig" class="org.springframework.web.servlet.view.freemarker.FreeMarkerConfigurer">
<property name="templateLoaderPath">
<value>/WEB-INF/html/</value>
</property>
<!--加载freemarker属性 -->
<property name="freemarkerSettings" ref="freemarkerConfiguration"></property>
</bean>
<!--配置试图解析器 -->
<bean class="org.springframework.web.servlet.view.freemarker.FreeMarkerViewResolver">
<property name="order" value="0"></property>
<property name="suffix" value=".html"></property>
<property name="contentType" value="text/html;charset=utf-8"></property>
<property name="viewClass">
<value>org.springframework.web.servlet.view.freemarker.FreeMarkerView</value>
</property>
</bean>
为什么要配置这个呢?因为当我使用InternalResourceViewResolver这个JSP视图解析器解析HTML时,当SpringMVC访问HTML页面,加载就特别慢。而且还乱码。所以我就使用freemarker来解析HTML页面了。