项目用springmvc+Thymeleaf ,但是发现html中的所有中文都乱码。
但是自己的html的编码确定已经是UTF-8,在web.xml文件里面也添加了CharacterEncodingFilter,还是没有解决。
在网上搜了好久,网上的说法是为ThymeleafViewResolver添加characterEncoding的属性,但是自己尝试之后还是没有解决。
同时为ServletContextTemplateResolver和ThymeleafViewResolver添加characterEncoding=UTF-8的属性。代码如下。(重要部分红色标出了)、
<!-- 前端的渲染魔板引擎thymeleaf--> <bean id="templateResolver" class="org.thymeleaf.templateresolver.ServletContextTemplateResolver"> <property name="prefix" value="/pages/"/> <property name="suffix" value=".html"/> <!-- 设置thymeleaf可以解析html的mode--> <property name="templateMode" value="LEGACYHTML5"/> <property name="cacheable" value="false"/>
<!--这里要设置编码 --> <property name="characterEncoding" value="UTF-8"/> </bean> <bean id="templateEngine" class="org.thymeleaf.spring3.SpringTemplateEngine"> <property name="templateResolver" ref="templateResolver"/> </bean> <!-- 配置引擎的viewResoler--> <bean class="org.thymeleaf.spring3.view.ThymeleafViewResolver"> <property name="templateEngine" ref="templateEngine"/>
<!--这里要设置编码 -->
<property name="characterEncoding" value="UTF-8"/>
</bean>
原文:http://www.cnblogs.com/weishenhong/p/5295886.html