2017-05-20 40 views
0

申请JSON字符串是如何创建具有相同Polo在一个JSON字符串

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

它有两个相同的申请TS,但它们不是相同的密钥。如何创建马球对象。我想要用类来解析字符串。

我创建了这些POJO对象

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+"]"; 
    } 
} 

如何处理这两种TS对象?

回答

0

如果您想保留相同的TS对象,只需将其他两个变量添加到它。

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集和其他变量将是零,而在其他情况下,它会被逆转。

否则,您需要另一个班级。

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

    // .... 
} 

而在你DB类改变变量类型的TSOtherTS

public class DB { 
    private OtherTS TS; 

    // .... 
} 

输出

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

谢谢你。我创造了另一个类OtherTS。有效。 –

相关问题