UTILS.
100 % dans le navigateur

JSON vers POJO Java

Créez des classes POJO Java à partir d'un exemple JSON, avec annotations Jackson ou Gson, getters et setters générés, et types boxés pour les champs nullables.

sortie

À propos de cet outil

L'outil JSON vers POJO Java convertit un exemple JSON collé en classes de modèle Java, à la manière de jsonschema2pojo mais instantanément dans votre navigateur. Il analyse le JSON, infère les types Java récursivement et émet une classe par objet : les chaînes deviennent String, les entiers int ou long, les autres nombres double, les booléens boolean, les tableaux List<T>, et les objets imbriqués leurs propres classes PascalCase déclarées avant les parents qui les utilisent.

Toute l'analyse et la génération s'exécutent localement avec JSON.parse et du JavaScript standard, de sorte que vos charges utiles ne quittent jamais la page. Les champs sont mis en camelCase ; quand la clé JSON n'est pas déjà en camelCase, l'outil ajoute @JsonProperty("originalKey") (Jackson) ou @SerializedName("originalKey") (Gson), ou rien en mode champs simples. Les champs pouvant être null dans un échantillon utilisent les types wrapper boxés (Integer, Long, Double, Boolean) pour que null soit représentable. Les classes Jackson portent @JsonIgnoreProperties(ignoreUnknown = true) pour la compatibilité ascendante.

La bascule de style d'annotation sélectionne Jackson (par défaut), Gson, ou aucune annotation, et seuls les imports réellement utilisés sont inclus. La bascule d'accesseurs choisit entre des méthodes getX()/setX() générées sur des champs privés (par défaut) ou des champs publics simples. Copiez le résultat ou téléchargez-le en fichier .java pour le déposer directement dans votre projet.

Foire aux questions

Quels types Java sont produits ?
string vers String, entier vers int (long quand une valeur dépasse la plage int), nombre non entier vers double, booléen vers boolean, tableau vers List<T>, et objet vers une classe nommée. Les champs pouvant être null utilisent des types boxés — Integer, Long, Double, Boolean.
Annotations Jackson ou Gson ?
La bascule d'annotation choisit Jackson (@JsonProperty, plus @JsonIgnoreProperties(ignoreUnknown = true)), Gson (@SerializedName), ou aucune. Les annotations ne sont ajoutées que lorsque le nom de champ camelCase diffère de la clé JSON d'origine.
Est-ce que j'obtiens des getters et setters ?
Par défaut, chaque champ privé reçoit un getX() et un setX() générés. Basculez sur des champs publics simples si vous préférez des champs nus de style record sans méthodes d'accès.
Mon JSON est-il envoyé quelque part ?
Non. Le JSON est analysé et les classes sont générées entièrement dans votre navigateur avec du JavaScript standard. Rien n'est téléversé, vous pouvez donc coller en toute sécurité des réponses d'API internes.

Plus d'outils