Maison > Java > javaDidacticiel > Comment générer des classes Java à partir de JSON à l'aide du plugin Maven jsonschema2pojo ?

Comment générer des classes Java à partir de JSON à l'aide du plugin Maven jsonschema2pojo ?

Barbara Streisand
Libérer: 2024-12-09 04:45:12
original
703 Les gens l'ont consulté

How to Generate Java Classes from JSON Using the jsonschema2pojo Maven Plugin?

Comment générer des classes Java à partir de JSON dans Maven

La génération de fichiers source Java à partir de JSON est une technique précieuse pour le mappage objet-JSON et la sérialisation des données. Dans ce scénario, nous cherchons à créer des classes Java ressemblant à ce qui suit :

class Address {
  private JSONObject mInternalJSONObject;

  Address(JSONObject json) {
    mInternalJSONObject = json;
  }

  String getStreetAddress() {
    return mInternalJSONObject.getString("streetAddress");
  }

  String getCity() {
    return mInternalJSONObject.getString("city");
  }
}

class Person {
  private JSONObject mInternalJSONObject;

  Person(JSONObject json) {
    mInternalJSONObject = json;
  }

  String getFirstName() {
    return mInternalJSONObject.getString("firstName");
  }

  String getLastName() {
    return mInternalJSONObject.getString("lastName");
  }

  Address getAddress() {
    return new Address(mInternalJSONObject.getJSONObject("address"));
  }
}
Copier après la connexion

Pour réaliser cette génération dans un projet Maven, vous pouvez exploiter un outil complet tel que http://www.jsonschema2pojo.org. Alternativement, vous pouvez utiliser le plug-in jsonschema2pojo pour Maven :

<plugin>
  <groupId>org.jsonschema2pojo</groupId>
  <artifactId>jsonschema2pojo-maven-plugin</artifactId>
  <version>1.0.2</version>
  <configuration>
    <sourceDirectory>${basedir}/src/main/resources/schemas</sourceDirectory>
    <targetPackage>com.myproject.jsonschemas</targetPackage>
    <sourceType>json</sourceType>
  </configuration>
  <executions>
    <execution>
      <goals>
        <goal>generate</goal>
      </goals>
    </execution>
  </executions>
</plugin>
Copier après la connexion

Pour les sources JSON, vous pouvez spécifier json. Cependant, si vous possédez de véritables schémas JSON, cette ligne n'est pas nécessaire.

Ces dernières années, la spécification JSON Schema a considérablement progressé, offrant un mécanisme robuste pour définir des règles structurelles. De plus, le projet jsonschema2pojo fournit un outil spécialement conçu qui convertit les documents de schéma JSON en classes Java DTO. Bien qu'il soit encore en développement, il couvre des parties essentielles du schéma JSON. Les commentaires des utilisateurs sont cruciaux pour son évolution continue, que vous pouvez fournir via la ligne de commande ou le plugin Maven.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal