Как вставить узел Json в другой узел на Java?

Мне нужно было это сделать и в итоге портировал программу на PHP, написанную Кейтом Мэтьюсом, которую вы можете найти на http://www.numbertheory.org/php/php.html , в Python , Сначала я использовал массивы Numpy, но столкнулся с проблемами с целыми переполнениями, поэтому переключился на матрицы Sympy, которые используют произвольные прецизионные численные представления.

Код выпущен на GitHub в https://github.com/ tclose / Diophantine в соответствии с лицензией MIT, поэтому не стесняйтесь использовать его и дайте мне знать, если у вас возникнут проблемы (извините, что это не лучше документировано). Мастер-ветвь использует Sympy, но вы можете получить доступ к исходной реализации Numpy в ветке «numpy», которая, похоже, работает нормально для разумно разреженных систем.

Если вы в конечном итоге используете ее для научной публикации, пожалуйста, цитируйте Кит (и, возможно, добавить ссылку на репозиторий GitHub).

1
задан Karol Dowbecki 17 January 2019 в 11:21
поделиться

1 ответ

Вместо JsonNode прочитайте Map и используйте стандарт Map.put() для изменения большего объекта:

ObjectMapper mapper = new ObjectMapper().enable(SerializationFeature.INDENT_OUTPUT);
TypeReference<Map<String, Object>> type = new TypeReference<>() {};
Map<String, Object> biggerMap = mapper.readValue(biggerJson, type);
Map<String, Object> smallerMap = mapper.readValue(smallerJson, type);

biggerMap.put("additional_info", smallerMap);

String outJson = mapper.writeValueAsString(biggerMap);
System.out.println(outJson);

выведет:

{
  "name" : {
    "first" : "Tatu",
    "last" : "Saloranta"
  },
  "title" : "Jackson founder",
  "company" : "FasterXML",
  "additional_info" : {
    "country" : "My country",
    "hobbies" : "some hobbies"
  }
}
0
ответ дан Karol Dowbecki 17 January 2019 в 11:21
поделиться
Другие вопросы по тегам:

Похожие вопросы: