首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用Java (Bing-Search-API)访问JSON中的嵌套元素

如何使用Java (Bing-Search-API)访问JSON中的嵌套元素
EN

Stack Overflow用户
提问于 2013-08-13 16:30:52
回答 1查看 531关注 0票数 1

我有使用Bing-Search检索的 JSON。现在,我不知道如何使用GSON访问嵌套元素。我已经为JSON结构数据创建了源文件

如果我这么做:

代码语言:javascript
复制
Gson gson = new Gson();

JsonParser parser = new JsonParser();

JsonArray Jarray = parser.parse(jsonText).getAsJsonArray();

它将抛给我的不是JsonArray,所以如果我将它更改为JsonObject,如何从Results.java检索String MediaUrl

谢谢

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-08-13 16:43:47

基于葛森类的javadoc:

代码语言:javascript
复制
    Gson gson = new Gson();
    Response response = gson.fromJson(jsonText, Response.class);
    Results firstResult = response.getD().getResults().get(0);
    System.out.println(firstResult.getMediaUrl());

因此,您不需要直接使用JsonParser

您的java类必须做一些修改才能工作:

  • results字段在D.java中的类型必须是List<Results>,这样Gson才能找到要填充的对象的类。
  • 属性/字段的命名是不一致的,有些以小写开头,另一些以大写开头。确保它们在java类和json字符串中是相同的(考虑到大小写敏感性)。使用适当的FieldNamingStrategy进行序列化/反序列化可以解决此问题。
票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18214447

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档