0

次の JSON 形式をデシリアライズする場合、POJO 宣言はどうすればよいですか。

{
"id":2,
"content":"skfdjhsfjhsfjkshdkjfhskdjf",
"created_at":"2012-11-14T00:10:59Z",
"feeds":
 [
   {
     "feed":{"name":"twitter"}
   } 
 ]
}

現在、私の POJO は次のようになっています。

Broadcast.java - 最も外側のオブジェクト

public class Broadcast {

    private String content;
    private String created_at;
    private Feeds feed[];
    private int id;

    public Broadcast() { }

    public int getId() { return id; }

    public String getContent() { return content; }

    public String getCreatedAt() { return created_at; }    
}

Feed.java - Broadcast の内部の子で、配列にすることができ、各フィードには name 属性があります。

public class Feeds {

    private String name;

    public Feeds() {}

    public String getName() {
        return name;
    }   
}
4

1 に答える 1

1

private Feeds feed[];

する必要があります

private Feeds[] feeds;.

実際には の配置は問題で[]はありませんが、読みやすくするため、活字の横に配置することをお勧めします。ここでの問題は、変数名が正しくないことです。


また、詳しく見てみると:

 "feeds":
  [
      {
          "feed":{"name":"twitter"}
      } 
  ]

feedsこれは実際には配列ですが、キーと値のペア ( ) を保持する"feed":{"name":"twitter"}変数 ( ) を表していることに気付くでしょう。したがって、クラスは次のようになります。feed{"name":"twitter"}Feeds

class Feeds {
    private Map<String, String> feed;

    public Feeds() {}

    public String getName() {
        return feed.get("name");
    }
}
于 2012-11-24T18:38:53.760 に答える