改造解析JSON动态键

2024-01-10

我是改造的新手。如何使用retrofit解析下面的Json?

{
   "data": {
      "Aatrox": {
         "id": 266,
         "title": "a Espada Darkin",
         "name": "Aatrox",
         "key": "Aatrox"
      },
      "Thresh": {
         "id": 412,
         "title": "o Guardião das Correntes",
         "name": "Thresh",
         "key": "Thresh"
       }
   },
   "type":"champion",
   "version":"6.23.1"
}

你可以让你的 POJO 模型包含一个Map<String, Champion>反序列化,处理动态键。

Example:

public class ChampionData {
    public Map<String, Champion> data;
    public String type;
    public String version;
}

public class Champion {
    public int id;
    public String title;
    public String name;
    public String key;
}

除此之外我对Retrofit并不熟悉,但正如评论中的某人所说,反序列化是由Gson完成的:

public ChampionData champions = new Gson().fromJson(json, ChampionData.class);

因此,为了以其他人发布的答案为基础,您可以执行以下操作,假设您已添加GsonConverterFactory:

public interface API {
    @GET("path/to/endpoint")
    Call<ChampionData> getChampionData();
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

改造解析JSON动态键 的相关文章

  • 如何在android中显示保存在sdcard文件夹中的图像[关闭]

    这个问题不太可能对任何未来的访客有帮助 它只与一个较小的地理区域 一个特定的时间点或一个非常狭窄的情况相关 通常不适用于全世界的互联网受众 为了帮助使这个问题更广泛地适用 访问帮助中心 help reopen questions 当我正在显
  • fetchUuidsWithSdp 的奇怪 UUID 逆转

    我有一个在树莓派上运行的 python 蓝牙服务器 使用 PyBluez 我在服务器中使用的uuid是 8f86d132 4ab8 4c15 b8df 0b70cf10ea56 我正在打电话device fetchUuidsWithSdp
  • Android 初学者:Android gridview 中的触摸事件

    我正在使用以下代码来使用 gridview 执行操作 稍作修改http developer android com resources tutorials views hello gridview html http developer a
  • 将MongoDb atlas数据库导出到本机Mongo compass

    我在 Atlas 中有一个名为 test 的远程数据库 我想将集合名称 image table 下载为 JSON 文件 在 Mac 终端中 mongoexport db test collection image table image j
  • 解析“流”JSON

    我在浏览器中有一个网格 我想通过 JSON 将数据行发送到网格 但浏览器应该在接收到 JSON 时不断解析它 并在解析时将行添加到网格中 换句话说 在接收到整个 JSON 对象后 不应将行全部添加到网格中 应该在接收到行时将其添加到网格中
  • 如何重定向到 instagram://user?username={username}

    我的 html 页面上有这个链接 可以在特定用户上打开 Instagram 应用程序 a href Link to Instagram Profile a 我一直在寻找自动运行 url instagram user username USE
  • 在 Cordova 应用程序中获取额外功能

    我们有两个 Android 应用程序 一个使用本机 Java 实现 另一个使用 Ionic 编写 Ionic 应用程序启动我的应用程序 这是使用灯插件 https github com lampaa com lampa startapp 我
  • ExoPlayer2 - 如何使 HTTP 301 重定向工作?

    我开始使用 ExoPlayer 来传输一些音频 一切都很顺利 直到我遇到一个带有 301 永久移动 重定向的 URL ExoPlayer2 默认情况下不处理该问题 我已经看过这个线程 https github com google ExoP
  • 将 MOXy 设置为 JAXB 提供程序,而在同一包中没有属性文件

    我正在尝试使用 MOXy 作为我的 JAXB 提供程序 以便将内容编组 解组到 XML JSON 中 我创建了 jaxb properties 文件 内容如下 javax xml bind context factory org eclip
  • Android:后台Activity可以执行代码吗?

    后台的活动是否被视为 正在运行 并且可以执行代码 还是处于挂起状态 他们暂停了 活动生命周期 http developer android com reference android app Activity html ActivityLi
  • 从 BroadcastReceiver 类调用活动方法

    我知道我可以做一个内部接收器类来调用接收器中的任何方法 但我的主要活动太大了 要做的事情也很多 因此 我需要一个扩展广播接收器的类 但它不是内部类 并且可以从我的主要活动中调用一种方法 我不知道是否可能 但我的活动是家庭活动和 single
  • 使用片段时应用程序崩溃

    我正在处理碎片和 我的代码中有一个我找不到的问题 logcat 指向我的一个片段中的这段代码 Override public View onCreateView LayoutInflater inflater ViewGroup conta
  • 上网本上可以进行Android开发吗? [关闭]

    Closed 这个问题是无关 help closed questions 目前不接受答案 我想使用我的上网本进行 Android 开发 但是当我尝试使用 Eclipse 运行 SDK 时 没有加载任何内容 上网本对于 Android 开发来
  • 通过系统应用程序以编程方式静默安装 apk(无需 root)

    我有带有 android sharedUserId android uid system UID 1000 的系统级应用程序 设备未root INSTALL PACKAGES 权限包含在清单中 我可以静默安装下载的 apk 吗 我已经发现这
  • 插件“Android Bundle Support”不兼容

    大家好 自从上次更新以来 当我启动 android studio 时 我遇到了一个非常奇怪的错误 我有这个错误 插件错误 插件 Android Bundle Support 不兼容 直到构建 AI 195 SNAPSHOT 我在网上找不到任
  • 通过电子邮件发送文本文件附件

    我正在尝试附加一个文本文件以便通过电子邮件发送 但每当我打开电子邮件应用程序时 它都会说该文件不存在 请帮助 Intent i new Intent Intent ACTION SEND i setType text plain i put
  • 创建一个 JSON 对象以在 Spring Boot 测试中发布

    我想编写基本测试来使用 JSON 负载在 users URL 上执行 POST 请求来创建用户 我找不到如何将新对象转换为 JSON 到目前为止有这么多 这显然是错误的 但解释了目的 Test public void createUser
  • 如何使用 AccessibilityService 在 Android 中模拟按键

    我正在编写一个辅助服务 我一直在尝试在应用程序上进行一些自动搜索 我使用accessibilityservice action paste来填充EditText 然后我需要模拟软键盘上的按键 但我不知道如何做 你们能帮我一下吗 你可以尝试A
  • Dagger 2 中“HasFragmentInjector”的实际用法是什么

    我之前已经实现了 dagger2 v2 2 但现在他们也添加了 dagger android 部分 所以我正在用它创建示例项目 我知道旧的方法论 Provide and Modules and 成分等注释 但从 Dagger 2 8 开始
  • JSON:TypeError:Decimal('34.3')不是JSON可序列化的[重复]

    这个问题在这里已经有答案了 我正在运行一个 SQL 查询 它返回一个小数列表 当我尝试将其转换为 JSON 时 出现类型错误 查询 res db execute SELECT CAST SUM r SalesVolume 1000 0 AS

随机推荐

  • 使图像的一部分可点击

    我以这种方式应用了背景图像 HTML div img src stock png class stretch alt image div CSS background width 100 height 100 position absolu
  • 具有 URL 重写模块的 IIS 7.5 在回发时将查询字符串参数加倍

    我在 Windows 7 RC 上使用 IIS 7 5 我使用 IIS Url Rewrite 模块来重写 URL 一切似乎都工作正常 直到我通过单击按钮执行回发 然后它将查询字符串参数附加到我重写的 URL 中 如下所示 重写的 URL
  • Node.js - 在加密模块中设置填充

    我一直在查看文档加密模块 http nodejs org api crypto html在 Node 中 我试图弄清楚如何在进行对称加密时设置填充 我正在尝试使用 AES 128 ECB 和 PKCS5 填充 我在任何地方都看不到它允许您指
  • 获取子节点包含属性的节点

    假设我有以下 XML
  • 在解决方案中实现业务规则引擎的方法或模式?

    我在一家年轻的银行公司工作 我们的解决方案 NET 有一个重要的技术债务 因此我们按照 DDD 原则对其进行重构 我们计划使用业务规则引擎 业务规则涉及会计目的 营销目的 风险目的 法律内容 我们计划对由企业赞助的 BRE 进行 POC 我
  • Chrome 开发者工具扩展控制台

    我将其包含在我的 chrome 扩展清单中 devtools page devtools html 在 devtools html 中 我包含一个 devtools js 文件 它创建一个面板 chrome devtools panels
  • Javamail,Transport.send() 非常慢

    我写了一个批量发送电子邮件的方法 但它非常非常慢 每 10 秒大约 3 封邮件 我想发送数千封邮件 有什么办法可以更快地做到这一点吗 我现在使用 gmail 但仅用于测试 最后我想使用我自己的 SMTP 服务器发送 这是代码 public
  • 表示对象中的优先级/偏好的最佳方式是什么?

    在域中建模优先级 偏好的最佳方法是什么 例如 假设我有一堂课Person代表一个人并有一些偏好 例如PersonX喜欢披萨 意大利面和煎蛋卷 实际上他更喜欢意大利面而不是披萨 如何对这些进行最佳建模 第一个想法就是把它们放在一个List 作
  • 在 R 中用十六进制值绘制颜色

    如何在 R 中生成 5x5 矩阵 每个单元格用调色板 例如 viridis 中的不同颜色着色 并且每个单元格显示颜色的十六进制值 谢谢您的帮助 您可以使用show col函数从scales package library viridis l
  • 如何在单击任何按钮时更改按钮的背景颜色?

    我有 3 个按钮 我创建了一个样式 用于所有三个按钮以显示 MouseOver 和 Pressed 状态 我需要有逻辑来指示选择 单击了哪个按钮 如果单击按钮 则背景颜色应保持 与按下状态相同 而其他两个按钮应重置为背景颜色以作为正常状态
  • 如何从 ASP.NET 读取条形码? [关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 我不确定 这可能吗 我想从 ASP NET 网站扫描条形码 有人知道怎么做吗 您需要扫描仪以及与扫描仪交互的相关软件 大多数手持式扫描
  • 为什么 eb 部署在第一次部署时失败?

    我创建了 2 个 NodeJs 环境 效果很好 后来创建了一个新的环境并eb deploy env name给我以下错误 Creating application version archive app ceb7 200713 223016
  • Android:将compileSdkVersion设置为比最新api更低的版本有优势吗?

    将清单中的compileSdkVersion设置为小于最新的api版本号有什么好处 还是应该始终将其设置为最新的api版本 android compileSdkVersion 22 当我说优势时 我指的是应用程序的性能 应用程序的编译时间
  • 使用谷歌应用程序引擎部署 Bottle 应用程序时出现问题

    这里是新手 我一直在尝试使用谷歌应用程序引擎在瓶子中创建一个 Hello World 我显示了 hello world 部分 但即使在索引页面上 我也得到以下输出 Hello world 状态 500 如果我尝试添加新路由 例如 page
  • 关闭服务器后尝试运行服务器时,Django python已停止工作

    python manage py runserver 第一次工作正常 但是用 ctrl c 关闭它后 我无法再次启动它 我收到错误消息 Python 已停止工作 通过重新启动计算机可以轻松解决此问题 但非常不方便 我也使用 pycharm
  • 编译 Rust 静态库并在 C++ 中使用它:未定义的引用

    我正在尝试编译一个staticRust 中的库 然后在我的 C 代码中使用它 注意这是从 C 调用 Rust 而不是相反 我浏览了我可以在网上找到的所有教程 并回答了类似的问题 我显然做错了什么 尽管我看不出是什么 我为我的问题创建了一个最
  • 无法在 Ubuntu Oracle Java 8 上运行 IntelliJ IDEA CE 12

    我使用的是 Ubuntu 13 04 和 Oracle Java 8 我已经设置了JAVA HOME and PATH变量 以下是尝试运行 IntelliJ 的终端输出 darren ubuntu opt intellij idea ce
  • 如何在 Mac OS X 中检测 SSD?

    是否有一种可靠 快速 确定性的方法 即not基准 来检查 Mac OS X 所在的系统驱动器是否是固态驱动器 还有其他指标可以表明磁盘处理并行访问的能力如何吗 我正在尝试调整我的程序将用于磁盘绑定操作的线程数 我对原始速度或寻道时间不感兴趣
  • Android FileProvider 删除文件

    我正在使用照片库应用程序 由于最近的牛轧糖更新 我无法从图库中删除文件 我发现我必须使用Fileprovider对于文件访问 我尝试了下面的代码 但它说 04 25 12 52 03 031 3204 4133 com zo tns1 E
  • 改造解析JSON动态键

    我是改造的新手 如何使用retrofit解析下面的Json data Aatrox id 266 title a Espada Darkin name Aatrox key Aatrox Thresh id 412 title o Guar