2017-05-20 16 views
0

でポロを作成するために、JSON文字列がどのように1つのJSON文字列に提出された同じ

{ 
    "TS" :{ 
     "name":"abc", 
     "value":"123" 
    }, 
    "DB" :{ 
     "TS": { 
       "MMPTELID": "043199", 
       "UNIQUEID": "43199" 
      } 
    } 
} 

ですこれは、2つの同じ提出TSを持っていますが、彼らは同じキーではありません。ポロオブジェクトを作成する方法。私はgsonがクラスで文字列を解析する必要があります。

私はこれらのPOJOが

2つのTSオブジェクトを処理する方法
public class MyPojo 
{ 
    private DB DB; 

    private TS TS; 

    public DB getDB() 
    { 
     return DB; 
    } 

    public void setDB (DB DB) 
    { 
     this.DB = DB; 
    } 

    public TS getTS() 
    { 
     return TS; 
    } 

    public void setTS (TS TS) 
    { 
     this.TS = TS; 
    } 

    @Override 
    public String toString() 
    { 
     return "ClassPojo [DB = "+DB+", TS = "+TS+"]"; 
    } 
} 

public class DB 
{ 
    private TS TS; 

    public TS getTS() 
    { 
     return TS; 
    } 

    public void setTS (TS TS) 
    { 
     this.TS = TS; 
    } 

    @Override 
    public String toString() 
    { 
     return "ClassPojo [TS = "+TS+"]"; 
    } 
} 

public class TS 
{ 
    private String name; 

    private String value; 

    public String getName() 
    { 
     return name; 
    } 

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

    public String getValue() 
    { 
     return value; 
    } 

    public void setValue (String value) 
    { 
     this.value = value; 
    } 

    @Override 
    public String toString() 
    { 
     return "ClassPojo [name = "+name+", value = "+value+"]"; 
    } 
} 

オブジェクト作成していますか?

答えて

0

同じTSオブジェクトを保持する場合は、他の2つの変数を追加してください。ここ

public class TS { 
    // .... 

    private String MMPTELID; 
    private String UNIQUEID; 

    // .... 
} 

出力

MyPojo [DB = DB [TS = TS [name=null, value=null, MMPTELID=043199, UNIQUEID=43199]], TS = TS [name=abc, value=123, MMPTELID=null, UNIQUEID=null]] 

問題があるケースでは、あなたのオブジェクトはnamevalueセットを持っていますし、他の変数がnullになることになり、それ以外の場合には、それが逆になります。

それ以外の場合は、別のクラスが必要です。

public class OtherTS { 
    private String MMPTELID; 
    private String UNIQUEID; 

    // .... 
} 

そして、あなたのDBクラスのOtherTSTSの変数の型を変更します。

public class DB { 
    private OtherTS TS; 

    // .... 
} 

出力

MyPojo [DB = DB [TS = TS [MMPTELID=043199, UNIQUEID=43199]], TS = TS [name=abc, value=123]] 
+1

感謝します.Iは、別のクラスのOTHERTSを作成しました。出来た。 –

関連する問題