Усы Java: перебор анонимного / бесключевого / массива верхнего уровня - PullRequest
0 голосов
/ 04 октября 2019

Вопрос: Как перебрать массив, считанный из входных данных json, у которого нет имени переменной / ключа. Я не хотел реструктурировать файл json, так как мне пришлось бы редактировать сервис, который генерирует этот json, а также другие сервисы, основанные на этом файле, и это также затронуло бы.

Решение для javascript уже былоопубликовано с использованием "."как имя массива в шаблоне Усы: Могут ли усы повторять массив верхнего уровня? и здесь Итерация по массиву без ключей с усами?

У меня был такой же вопрос дляJava-реализация усов.

Опять пример ввода данных (json):

[ 
{
  "name" : "test",
  "week" : "first",
  "date" : "Wed Oct 02 14:06:35 GMT 2019",
  "status" : "success"
}
]

1 Ответ

0 голосов
/ 04 октября 2019

Чтение этого с Джексоном в карту, а затем преобразование его обратно в строку json показало мне, что Джексон назовет этот массив «объект». Вот результат этого преобразования и реконверсии:

{
  "object" : [ {
    "name" : "test",
    "week" : "first",
    "date" : "Wed Oct 02 14:06:35 GMT 2019",
    "status" : "success"
  } ]
}

Так что, если вы используете Джексона, мы можем просто использовать идентификатор "объект" в шаблоне Усы

    {{#object}}
    <tr>
        <td>{{name}}</td>
        <td>{{week}}</td>
        <td>{{date}}</td>
        <td>{{status}}</td>
    </tr>
    {{/object}}
...