java - Spring MVC 响应编码问题

标签 java servlets spring-mvc character-encoding

在过去的几个小时里,我阅读了很多关于这个主题的内容,但到目前为止没有任何效果。我正在尝试返回包含“奇数”某些字符的响应。这是一个非常简单的例子:

@ResponseBody
    @RequestMapping(value="test")
    public String test(){
        String test = "čćžđš";
        System.out.println(test);
        logger.info(test);
        return test;
    }

这是我的 web.xml ,因为我在 CharacterEncodingFilter 帮助的地方找到了一些答案(虽然不是我的情况)。我使用 POST 方法是因为我读到这适用于 POST。

还发现了这个answer (有关的)。也没有帮助。

当我调试它时会出现正确的值,但是当我打印时它不会出现,如下所示:

enter image description here

当我从 jmeter 测试它时,响应似乎没问题,Content-Typetext/html;charset=UTF-8

这也是它的屏幕截图。 http://i56.tinypic.com/14lt653.jpg

我认为正确的方法是返回 UTF-8,也许我错了。

最佳答案

@ResponseBody 使用 ResponseEntity。

@RequestMapping(value="test")
public ResponseEntity<String> test(){
    String test = "čćžđš";
    System.out.println(test);
    logger.info(test);
    HttpHeaders responseHeaders = new HttpHeaders();
    responseHeaders.add("Content-Type", "application/json; charset=UTF-8");
    return ResponseEntity<String>(test,responseHeaders, HttpStatus.OK);
}

关于java - Spring MVC 响应编码问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6638284/

相关文章:

java - Spring 启动 JPA : Passing Multiple Values for the Same Parameter (JPQL)

java - HashMap实现概念

java - 是否可以使用 cookie 将数据从一台服务器上的 Web 应用程序传递到同一域中另一台服务器上的 Web 应用程序?

java - 转储 java.util.Map 的内容 - 未按预期工作

tomcat - 在 NetBeans 中运行 TimeForm servlet 项目时出现 HTTP 状态 404 错误

java - 使用 Spring :message tag inside of form:input tag in Spring MVC

java - Struts 到 Spring 迁移出现 404 错误

java - PhoneScreenVerticalManager 来电时出现异常

java - 运行 JPanel 窗体

java - 无法从 Controller 访问主干模型属性