以下の内容はhttps://unageanu.hatenablog.com/entry/20090811/1249997788より取得しました。


JSONICでオブジェクトをJSON形式に変換する

JSONICを使うと、任意のJavaBeanをJSONにさくっと変換できます。

// テスト用クラス
static final class Kitten {
    private String name;
    private int age;

    public Kitten() {}
    public Kitten( String name, int age ) {
        this.name = name;
        this.age = age;
    }

    public final String getName () {
        return name;
    }
    public final void setName ( String name ) {
        this.name = name;
    }

    public final int getAge () {
        return age;
    }
    public final void setAge ( int age ) {
        this.age = age;
    }

    @Override public String toString() {
        return name + ":" + age;
    }
}
...
// テスト用オブジェクト
Kitten mii = new Kitten("mii", 1);

// jsonにエンコード
String json = JSON.encode( mii, true );
System.out.println( json );

// jsonからオブジェクトを生成
mii = JSON.decode( json, Kitten.class );
System.out.println( mii.toString() );

実行結果です。

{
	"age": 1,
	"name": "mii"
}
mii:1

ネストしているオブジェクトの変換もサポートされています。

// テスト用クラス
static final class Kitten {
    private String name;
    private int age;
    private Kitten friend; // 追加

    public Kitten() {}
    public Kitten( String name, int age ) {
        this.name = name;
        this.age = age;
    }

    public final String getName () {
        return name;
    }
    public final void setName ( String name ) {
        this.name = name;
    }

    public final int getAge () {
        return age;
    }
    public final void setAge ( int age ) {
        this.age = age;
    }
    public final Kitten getFriend () {
        return friend;
    }
    public final void setFriend ( Kitten friend ) {
        this.friend = friend;
    }

    @Override public String toString() {
        return name + ":" + age;
    }
}
...
Kitten mii  = new Kitten("mii", 1);
Kitten tora = new Kitten("tora", 2);
mii.setFriend( tora );

// jsonにエンコード
String json = JSON.encode( mii, true );
System.out.println( json );

// jsonからオブジェクトを生成
mii = JSON.decode( json, Kitten.class );
System.out.println( mii.toString() );
System.out.println( mii.getFriend().toString() );

実行結果です。

{
	"age": 1,
	"friend": {
		"age": 2,
		"friend": null,
		"name": "tora"
	},
	"name": "mii"
}
mii:1
tora:2



以上の内容はhttps://unageanu.hatenablog.com/entry/20090811/1249997788より取得しました。
このページはhttp://font.textar.tv/のウェブフォントを使用してます

不具合報告/要望等はこちらへお願いします。
モバイルやる夫Viewer Ver0.14