ホームページ > Java > &#&チュートリアル > jsonschema2pojo Maven プラグインを使用して JSON データから Java クラスを生成するにはどうすればよいですか?

jsonschema2pojo Maven プラグインを使用して JSON データから Java クラスを生成するにはどうすればよいですか?

Patricia Arquette
リリース: 2024-11-28 21:10:16
オリジナル
450 人が閲覧しました

How Can I Generate Java Classes from JSON Data Using the jsonschema2pojo Maven Plugin?

JSON から Java クラスを生成できますか?

Java 開発者として、JSON データから Java ソース ファイルを生成する必要がある状況に遭遇することがあります。これは、JSON 構造をミラーリングするデータ転送オブジェクト (DTO) または POJO (Plain Old Java Object) を作成するための貴重なテクニックとなります。

jsonschema2pojo Maven プラグインを使用してこれを実現する方法は次のとおりです。

Maven プラグイン構成

  1. 次のプラグイン構成を pom.xml ファイルに追加します:
<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>
ログイン後にコピー
  • sourceDirectory : JSON スキーマの場所を指定します。 files.
  • targetPackage: 生成されたクラスのパッケージ名を定義します。
  • sourceType: ソースが JSON であることを示します (次の場合はこの行を削除します) JSON スキーマを使用)。

JSON の例データ

次の JSON データについて考えてみましょう:

{
  "firstName": "John",  
  "lastName": "Smith",  
  "address": {  
    "streetAddress": "21 2nd Street",  
     "city": "New York"
  }
}
ログイン後にコピー

生成された Java クラス

Maven プラグインを実行すると、次の Java クラスが生成されます:

class Address  {
    JSONObject mInternalJSONObject;
     
    Address (JSONObject json){
        mInternalJSONObject = json;
    }
     
    String  getStreetAddress () {
        return mInternalJSONObject.getString("streetAddress");
    }
    
    String  getCity (){
        return mInternalJSONObject.getString("city");
    }
}

class Person {        
    JSONObject mInternalJSONObject;
    
    Person (JSONObject json){
        mInternalJSONObject = json;
    }
    
    String  getFirstName () {
        return mInternalJSONObject.getString("firstName");
    }
    
    String  getLastName (){
        return mInternalJSONObject.getString("lastName");
    }
    
    Address getAddress (){
        return Address(mInternalJSONObject.getString("address"));
    }
}
ログイン後にコピー

これらの生成されたクラスにより、JSON 構造内のデータに簡単にアクセスできるようになり、便利な方法でデータを操作できるようになります。オブジェクト指向の方法。

以上がjsonschema2pojo Maven プラグインを使用して JSON データから Java クラスを生成するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート