Par exemple, si je désérialiser le JSON suivant dans un JsonNode:Est-ce que Jackson désériorisation dans une commande de propriété de garantie JsonNode?
{
"property1": 1,
"property2": 2,
"property3": 3
}
puis parcourir les éléments avec JsonNode#fields, est-il une garantie que le iterator retourne les propriétés dans l'ordre qu'ils ont été définis (c.-à-property1 , propriété2, propriété3)?
Intuitivement je suppose que la réponse est non, parce que la spécification JSON définit les objets comme "un ensemble non ordonné de paires nom/valeur". CEPENDANT, JSON RFC (RFC 7159) dit ceci:
JSON bibliothèques analyse syntaxique ont été observées diffèrent quant à savoir si ou non ils font l'ordre des membres d'objets visibles à appeler logiciel.
Et je n'ai pas été en mesure de trouver des informations sur la façon dont Jackson gère cela.
Ceci est un début mais ne répond pas vraiment à la question. Avec cette connaissance, je suppose que ma question devient alors: «Est-ce que Jackson garantit l'insertion dans l'ordre des propriétés dans sa LinkedHashMap lors de la désérialisation? –
Je ne vois pas pourquoi Jackson dev choisirait une telle implémentation pour toute autre raison –