Как назначить новому массиву массив объектов?

#java #spring

Вопрос:

Я не могу понять, как бы я поступил с ff.

У меня есть ff. Полезная нагрузка

    {
    "code": null,
    "message": null,
    "recCtrlOut": {
    },
    "acctSumm": [
        {
            "acctBasic": {
                "acctType": "SV",
                "acctId": "123",
                },
            "acctBasic": {
                "acctType": "SV",
                "acctId": "321",
                }
}
]
        
}
 

И я просто хочу получить параметры acctId и назначить их новому простому массиву учетных записей. Как мне это сделать в Spring/Java?. Спасибо

Комментарии:

1. Ваш JSON недействителен

2. хорошо, я обновил его , не заметил, что пропустил квадратные скобки при редактировании полезной нагрузки

Ответ №1:

Попробуйте использовать путь json. Библиотеку можно найти здесь. Например, скажем, у вас был такой json:

 {
  "code": null,
  "message": null,
  "recCtrlOut": {
  },
  "acctSumm": [
    {
      "acctBasic": {
        "acctType": "SV",
        "acctId": "123"
      }
    },
    {
      "acctBasic": {
        "acctType": "SV",
        "acctId": "321"
      }
    }
  ]
}
 

Фактический код был бы чем-то вроде:

 List<String> ids = JsonPath.read(json, "$.acctSumm[*].acctBasic.acctId");
 

Приведенный выше список теперь будет содержать:

 ["123","321"]
 

Если вы хотите изучить синтаксис пути json, вы можете попробовать использовать этот онлайн-инструмент. Вот также руководство, которое поможет вам начать работу с json path.