如何为键是可变的JSON字符串创建一个java类?
响应
array ( 0 => array ( 'time_start' => 1252652400, 'time_stop' => 1252911600, 'stats' => array ( 6002306163363 => array ( 'id' => 6002306163363, 'impressions' => '6713', 'clicks' => '7', 'spent' => '593', 'actions' => '1', ), ), ), )
数据显示在rest / ads.getAdGroupStats的facebook api中。
我无法将stats部分转换为Java类,其中6002306163363是一个变量,同样可以有更多的映射。 以下是三个广告123456,23456,34567的完整结果。
[ { "time_start": 0, "time_stop": 1285224928, "stats": { "123456": { "id": 123456, "impressions": 40, "clicks": 0, "spent": 0, "social_impressions": 0, "social_clicks": 0, "social_spent": 0 }, "23456": { "id": 23456, "impressions": 3, "clicks": 0, "spent": 0, "social_impressions": 0, "social_clicks": 0, "social_spent": 0 }, "34567": { "id": 34567, "impressions": 211457, "clicks": 84, "spent": 6898, "social_impressions": 124, "social_clicks": 0, "social_spent": 0 } } } ]
我必须创建一个Java类,它可以映射到上面的JSON而不能这样做。 有人可以帮我吗?
更新:我从facebook和我们正在使用的api中获取此数据需要类,以便可以映射返回的json。 我只能控制创建一个类,以便api在内部映射出来。 我需要所需的java类的格式。
您需要一个hashmap或类似的东西来处理这些数字键。
public class GroupStats { long time_start; long time_stop; HashMap stats; } public class GroupAccount { long id; int impressions; int clicks; int spent; int social_impressions; int social_spent; }
我是Mark Allen(RestFB维护者)。 版本1.6应该使用新选项来解决这个问题,以映射到内置的JsonObject类型 – 请查看http://restfb.com以获取示例。
- Android – 现有片段与Facebook SDK冲突?
- restfb:用java编写facebook应用程序(使用新的图形api)
- OAuthProblem,缺少参数access_token
- 如何以编程方式在春季社交的Facebook页面上发帖?
- Facebook登录后在URL中跟踪字符
- facebook登录失败:{会话状态:CLOSED_LOGIN_FAILED,令牌:{AccessToken令牌:ACCESS_TOKEN_REMOVED权限:},appId:131 *** 64547}
- 如何使用xmpp连接Facebook聊天,我想输入朋友的用户名,然后聊天显示SASL身份validation失败
- Android:分享图片意图不与Facebook合作?
- Facebook在Android中使用不同的设备登录