Java Spring@RestController无法返回unicode
我有一个简单的RestController,它返回一个unicode字符串:Java Spring@RestController无法返回unicode,java,spring-mvc,unicode,utf-8,spring-restcontroller,Java,Spring Mvc,Unicode,Utf 8,Spring Restcontroller,我有一个简单的RestController,它返回一个unicode字符串: @RestController @RequestMapping(path = "/") public class FooController { @RequestMapping(method = RequestMethod.GET) public String test() throws Exception { return "ỗ ẵ ẫ ậ ự"; } } 但当运行时,它只显
@RestController
@RequestMapping(path = "/")
public class FooController {
@RequestMapping(method = RequestMethod.GET)
public String test() throws Exception {
return "ỗ ẵ ẫ ậ ự";
}
}
但当运行时,它只显示“?”,如何解决此问题,我在web.xml中已经有此配置:
<filter>
<filter-name>characterEncodingFilter</filter-name>
<filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>UTF-8</param-value>
</init-param>
<init-param>
<param-name>forceEncoding</param-name>
<param-value>true</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>characterEncodingFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
字符编码滤波器
org.springframework.web.filter.CharacterEncodingFilter
编码
UTF-8
强制编码
真的
字符编码滤波器
/*
当我使用简单的HttpServlet进行测试时,它可以返回高于unicode的字符串。以防其他人遇到相同的情况…
添加生成带有字符集=utf-8的注释
然后使用响应对象,如:
@RestController
@RequestMapping(path = "/")
@Produces(MediaType.TEXT_PLAIN + ";charset=utf-8")
public class FooController {
@RequestMapping(method = RequestMethod.GET)
public Response test() throws Exception {
return Response.status(HttpStatus.OK).entity("ỗ ẵ ẫ ậ ự").build();
}
}
您的响应标题的
内容类型是什么?@Reno我没有设置。