java中的json缺少方括号

java中的json缺少方括号,java,json,rest,jackson,http-post,Java,Json,Rest,Jackson,Http Post,我正在使用jackson的ObjectMapper创建JSON。在调试器中,我可以看到生成的json字符串(下面函数中的字符串json变量)之前缺少“[”,之后缺少“]”。所以作为一种解决办法,我加入了 String str = "["+json+"]"; 这就解决了问题。我担心这会在将来导致bug,不知道是否有更好的方法 import org.codehaus.jackson.map.ObjectMapper; ObjectMapper mapper = new ObjectMapp

我正在使用jackson的ObjectMapper创建JSON。在调试器中,我可以看到生成的json字符串(下面函数中的字符串json变量)之前缺少“[”,之后缺少“]”。所以作为一种解决办法,我加入了

String str = "["+json+"]"; 
这就解决了问题。我担心这会在将来导致bug,不知道是否有更好的方法

import org.codehaus.jackson.map.ObjectMapper;

  ObjectMapper mapper = new ObjectMapper();
  String json = mapper.writeValueAsString(object);
  String jsonFixed = "["+json+"]";
JSON字符串(前面不带“[”,后面不带“]”)


根据我之前的评论转载:


JSON没有缺少方括号。JSON中的方括号表示数组。您正在序列化单个对象,而不是数组,因此没有方括号。通过添加方括号,您已经将JSON从对象表示转换为长度为1的对象数组表示


进一步阅读请参阅。

JSON没有缺少方括号。JSON中的方括号表示数组。您正在序列化单个对象,而不是数组,因此没有方括号。通过添加方括号,您已经将JSON从对象表示转换为长度为1的对象数组表示。进一步阅读请参阅JSON规范:@Afforess这应该是一个答案,而不是注释。
{"organisationid":"2345612ß","projectid":"12345678",
"place":{"placeId":"2345","last_place":"123-3"},
"user":{"isY":"false","isHere":"false","isBuyer":"false"},
"x":{"identifier":"SHDG-28CHD"},
"event_type":"x_depart"}