Stricte parsing JSON avec Google Gson?
Suppose que je suis en utilisant Google Gson bibliothèque de parser JSON en Java structures de données.
Est-il un moyen facile de lever une exception si il y a un Java champ qui n'a pas de correspondant JSON? C'est, je tiens à exiger le JSON pour avoir tous les champs de la Java de la structure.
OriginalL'auteur dfrankow | 2010-07-02
Vous devez vous connecter pour publier un commentaire.
Gson ne dispose pas d'un JSON schéma de validation de fonction pour spécifier qu'un élément particulier doit être présent, et il n'a pas un moyen de spécifier qu'un Java membre doit être rempli. Il pourrait être agréable d'avoir une telle fonction est disponible, comme avec un
@Required
annotation. La tête sur plus de le Gson Liste de Problèmes de et mettez dans une demande d'amélioration.Avec Gson, vous pourrait faire valoir que spécifié JSON éléments sont présents avec une coutume deserializer.
Une meilleure approche pourrait être d'utiliser une API qui fournit JSON Schema de validation. Jackson a au moins une connaissance rudimentaire de la mise en œuvre disponibles. JSON Outils ressemble à une plus grande maturité.
Voici un exemple avec une Jackson.
OriginalL'auteur Programmer Bruce
Vous pouvez récursive vérifier si le json contient des champs qui ne sont pas déclarées dans la classe :
OriginalL'auteur ohad serfaty