使用 Thymeleaf 作为 Spring MVC 的展现模板时,如果配置不当会遇到无法正常显示中文的问题(中文乱码)。

在 Spring MVC 项目中,打开项目中 Spring MVC 的配置文件,比如: spring-mvc.xml 文件,检查 Thymeleaf 模板的相关的两个配置项:

templateResolver 和 ThymeleafViewResolver, 注意在配置中都需要指定编码为: UFT-8, 如下面的配置:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<bean id="templateResolver"
class="org.thymeleaf.templateresolver.ServletContextTemplateResolver">
<property name="prefix" value="/WEB-INF/views/" />
<property name="suffix" value=".html" />
<property name="templateMode" value="HTML5" />
<property name="characterEncoding" value="UTF-8"/>
</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="characterEncoding" value="UTF-8"/>
</bean>
TAGS