俄语字符显示为???在java中

问题描述 投票:0回答:1

我有一个控制器,必须返回一个俄语名称的JSON字符串,但我得到的回应是????? (无效字符)。

@Controller
public class ManifestController {

    @ResponseBody
    @RequestMapping(value = {"/manifest.json","/manifest"}, method = { RequestMethod.GET }, produces = {MediaType.APPLICATION_JSON_VALUE})

    public String getManifestJson(
            HttpServletRequest request)
    {
        Employee e= new Employee ();
        e.setName("Мегафон Игры"); 

        return JsonUtil.jsonStringify(e);  //it converts object to json using JsonObjectMapper


    }
}
java json spring utf-8 utf-16
1个回答
0
投票

我在我的机器上尝试了它,这是工作

  User e = new User();
  e.setFirstName("Мегафон Игры");
  ObjectWriter ow = new ObjectMapper().writer().withDefaultPrettyPrinter();
  String json;
  json = ow.writeValueAsString(e);
  return json;

我收到的是:

{
"id": 0,
"creationDate": null,
"username": null,
"firstName": "Мегафон Игры",
"lastName": null,
"email": null,
"updateDate": null,
"active": 0
}
© www.soinside.com 2019 - 2024. All rights reserved.