如何使用POjo类

时间:2015-12-10 13:26:14

标签: java json

我在为此示例嵌套json格式生成java对象时遇到问题

{
"Id":"id1",
"Eid":"eid1",
"tar":"pro",
"highlights":[{
  "name":"l-p"
  "Data":{
       "dataid":"did1"
       }
     },
{
  "name":"c-p",
  "Data":{
       "dataid":"did2"
       }
     },
{
  "name": "ename",
   "Data": {
       "enamedetails":"details"
}
}]
}

我为id,eid和tar生成了getter setter方法,但不确定如何为高亮显示生成。并使用gson将其转换为json。

Getter setter方法:

public class hello implements intt{

       @SerializedName("ID")
       private String ID = null;

       @SerializedName("Eid")
       private String Eid=null;

       @SerializedName("tar")
       private String tar=null;
/**
       * @return the Id
       */
       public String getId() {
              return Id;
       }

       /* (non-Javadoc)
       * @see java.lang.Object#toString()
       */
       @Override
       public String toString() {
              return "EDetails [ID=" + ID
                           + ", eid=" + eid+ ", tar=" + tar
                           + "]";
       }

       /**
       * @param Id the Id to set
       */
       public void setId(String Id) {
              this.Id= Id;
       }

       /**
       * @return the eid
       */
       public String geteid() {
              return eid;
       }

       /**
       * @param eid the eid to set
       */
       public void seteid(String eid) {
              this.eid= eid;
       }

       /**
       * @return the tar
       */
       public String gettar() {
              return tar;
       }

       /**
       * @param tar the tar to set
       */
       public void settar(String tar) {
              this.tar= tar;
       }

在实施班中,

edetails.setId("id1");
edetails.settar("pro");
edetails.seteid("eid1");
 Gson gson = new Gson();
 String sDetails=gson.toJson(edetails);

不确定如何为嵌套的json类

执行此操作

1 个答案:

答案 0 :(得分:0)

精彩集锦是一个对象列表,因此您可以这样做:

 public class hello implements intt{
    //other parts of class
       List<Highlight> highlights;

       public void setHighlights(List<Highlight> highlights){
          this.highlights = highlights;
         }
    }

Highlight是下面的POJO:

public class Highlight{
  public String name;
  @SerializedName("Data")
  public Data data;
}

数据POJO:

public class Data{
  public String dataid;
  public String enamedetails;
}

然后您只需创建一个列表,然后调用 setHighlights 方法。