java设置请求头编码格式_Spring MVC 关于controller的字符编码问题

  • Post author:
  • Post category:java


在使用springMVC框架构建web应用,客户端常会请求字符串、整型、json等格式的数据,通常使用@ResponseBody注解使 controller回应相应的数据而不是去渲染某个页面。如果请求的是非英文格式的字符串,往往在客户端显示的是乱码。原因是spring的 StringHttpMessageConverter默认的字符类型是iso8895-1 ‘西欧语言’,中文等字符需要单独指定。

这里总结几种解决方案:

1.不使用@ResponseBody注解,使用HttpServeletResponse设置contentType属性

@RequestMapping(value =”/rest/create/document”)

public void create(Document document, HttpServletRespone respone) {

repoonse.setContentType(“text/plain;charset=’utf-8′”);

response.write(“中文string”);

}

2.返回Response Entity object,设置contentType,例:

@RequestMapping(value = “/rest/create/document”) public ResponseEntity create(Document document, HttpServletRespone respone) {

HttpHeaders responseHeaders = new HttpHeaders(); responseHeaders.add(“Con



版权声明:本文为weixin_35738304原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。