使用JTwig模板的SpringWebApp中的UTF-8编码问题
我们在SpringWebApp中使用JTwig模板引擎。这是一个很棒的工具,具有非常好的特性,但我们在使用UTF-8的unicode内容编码方面遇到了困难 首先,使用JTwig模板的SpringWebApp中的UTF-8编码问题,spring,spring-mvc,unicode,utf-8,jtwig,Spring,Spring Mvc,Unicode,Utf 8,Jtwig,我们在SpringWebApp中使用JTwig模板引擎。这是一个很棒的工具,具有非常好的特性,但我们在使用UTF-8的unicode内容编码方面遇到了困难 首先,viewsolver在Java中配置为: @Bean public ViewResolver viewResolver() { JtwigViewResolver view = new JtwigViewResolver() view.setPrefix("/WEB-INF/templates/"); view.
viewsolver
在Java中配置为:
@Bean
public ViewResolver viewResolver() {
JtwigViewResolver view = new JtwigViewResolver()
view.setPrefix("/WEB-INF/templates/");
view.setSuffix(".twig");
return view;
}
然后,我们让Spring MVC控制器向模型添加一些文本,并将其传递给视图:
@RequestMapping(value = "/unicode", produces = "text/html;charset=UTF-8")
public String testUnicode(ModelMap model) {
model.addAttribute("text", "tête de bou 간편한 설치 및 사용");
return "testPage";
}
最终渲染的位置:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="content-type" content="text/html;charset=utf-8" />
</head>
<body>
<h1>tête de bouton -- 간편한 설치 및 사용</h1>
From model: {{ text }}
</body>
</html>
布顿酒店간편한 설치 및 사용
来自模型:{{text}
但实际输出是:
tête de bouton--간편한 설�? 및 사용强>
来自型号:t?te de bou强>
在模板i中硬编码的Unicode文本几乎是正确的,但模型中的文本完全是错误的。有什么想法吗?Jtwig在渲染时使用Java的默认字符集。这违反了细枝兼容性,如图所示
我为在3.1.0中发布的编写了一个。您可以执行以下操作: 1)
view.setEncoding(“UTF-8”);
2) view.setContentType(“text/html;charset=UTF-8”)代码>
第二