jackson 对象转出字符串,格式问题

发布于 2021-11-30 20:39:33 字数 594 浏览 868 评论 1

先贴代码
  ObjectMapper objectMapper = new ObjectMapper();
  Object v2 = objectMapper.writeValueAsString(new int []{1,2,3,4});
  Map<String, Object> map = new HashMap<>();
  map.put("k1", "v1");
  map.put("k2", v2);
  System.out.println(objectMapper.writeValueAsString(map));
输出值为:{"k1":"v1","k2":"[1,2,3,4]"}
我想要的输出值为: {"k1":"v1","k2":[1,2,3,4]} 
因为v2可以直接解析出json格式,下游而不是转义字符串,在进行解析,这个问题该怎么破,
知道解决方法的求告知。
不要告诉我,将v2直接替换成new int []{1,2,3,4} ,这是封装好的方法,v2是参数传进来的,只能用object来接收


如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

葬花如无物 2021-12-02 08:22:43
Object v2 = objectMapper.writeValueAsString(new int []{1,2,3,4});

你看你这一句,再看下writeValueAsString(Object)的返回类型,你的v2就是String类型的。

你传进去的参数就是String,而不是数组

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文