utf8字符集与Thymeleaf


问题内容

当将Spring与Thymeleaf一起使用时,我的所有西里尔字母都显示?????在页面上。

使用

@RequestMapping(value = "/login", method = RequestMethod.GET, produces = "text/html; charset=utf-8")

如何解决这个问题?


问题答案:

答案可以在这里找到:

characterEncoding应该为templateResolver和明确设置属性ThymeleafViewResolver

<bean id="templateResolver" class="org.thymeleaf.templateresolver.ServletContextTemplateResolver">
    ...
    <property name="characterEncoding" value="UTF-8"/>
    ...
</bean>

<bean class="org.thymeleaf.spring4.view.ThymeleafViewResolver">
    ...
    <property name="characterEncoding" value="UTF-8"/>
    ...
</bean>