2016-06-13 1 views
1

Я ПОЛУЧАТЬ полезную нагрузку JSON из БД Postgres к моему ApplicationServer как:Преобразование текста postgres arry в java List?

{ 
    "allAttributes" : { 
    "name" : "some-name", 
    "U_labels" : "{label26}" 
    } 
} 

Так что я разобрать этот JSON, чтобы преобразовать его в POJO в Java с использованием библиотеки Джексона JSon.

Однако некоторые поля, такие как U_labels в Postgres, представляют собой текстовый массив и List<String> в java. Таким образом, ожидается, что "U_labels" : "{label26}" будет "U_labels" : "[label26]".

Как это отображение может быть достигнуто в jackson ??

ответ

0

Не уверен, но, возможно, что-то вроде этого:

List<String> stringList = mapper.readValue(jsonString, 
    typeFactory.constructCollectionType(List.class, String.class)); 
+0

Это Виль читать всю строку JSON, но я буду требовать, чтобы преобразовать индивидуальный ключ ('«U_labels»'), чтобы преобразовать в 'Список ' , –

+0

Вы должны добиться удаления фигурных скобок с помощью замены String. Поскольку {U_labels} не является массивом в JSON. – Popeye

+0

@Popeye: Нет ли другого решения? Может быть, использование 'objectMapper' могло бы помочь? Как будто это будут некоторые ключи, которые будут глубоко вложены, мне пришлось бы выполнять замену строк на вложенном уровне. –

Смежные вопросы