如何在Jackson中为列表的每个元素添加名称

时间:2016-07-18 10:46:23

标签: javascript java json groovy jackson

是否可以使用JACKSON为JSON中的列表的每个元素设置名称?

例如,我有以下JSON:

{"result": [
    {
      "name": "ABC",
      "age": "20"
    },{
      "name": "DEF",
      "age": "12"
    }
]}

但我需要这个:

{"result": [
    person: {    // << this is the name
      "name": "ABC",
      "age": "20"
    },
    person: {
      "name": "DEF",
      "age": "12"
    }
]}

感谢大家!

更新

大家好!

我犯了一个错误!正确的形式如下:

{"result": [
    {
       person: {    // << this is the name
         "name": "ABC",
         "age": "20"
       }
    },
    {
       person: {
         "name": "DEF",
         "age": "12"
       }
    }
]}

1 个答案:

答案 0 :(得分:0)

在普通的Javascript中,您可以使用Array#map并使用person属性返回一个新对象。

var object = { result: [{ name: "ABC", age: "20" }, { name: "DEF", age: "12" }] };

object.result = object.result.map(function (a) {
    return { person: a };
});

console.log(object);