使用 google gson 进行 json 对象序列化/反序列化

2024-02-04

我想将 java 对象序列化为 json 或从 json 反序列化。谷歌 gson 更好。 让我有A类:



class A {
  int x = 1;
  int y = 2; 
}
  

然后,如果我调用 new Gson().toJson(new A()) 我将得到以下结果:



{ x: 1, y : 2}. 
  

然而我想要拥有



{class : "A", x:1, y:2}
  

因此,我可以使用反射对其进行反序列化,而无需在编译时知道类名。我可以怎样做呢? 谢谢。


你的第二个例子不是 JSON。如果您想要维护实例状态和特定类等的东西,请查看 YAML

http://www.yaml.org/ http://www.yaml.org/

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 google gson 进行 json 对象序列化/反序列化 的相关文章

随机推荐

  • SQLite 内存数据库的优点[关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 我今天从一本关于 SQLite 的书中读到了关键字 memory 但它只说了它是什么 如何使用 而且解释太短了 所以我在这里搜索了更多
  • React js 日期选择器的多个实例

    如果我使用日期选择器的多个实例 我在更新反应日期选择器上的日期时遇到问题 日期选择器组件
  • 在Python中快速找到给定大小的所有连通子图的方法?

    注 快速解决方案在answer https stackoverflow com a 75751315 12842085然而 需要进一步改进速度 给定一个无向稀疏连接图G with n顶点 我正在寻找一种快速的方法来找到所有连接的子图G wi
  • 使用 SSH 的 Laravel MySql 数据库连接

    我有几个想要访问的远程数据库 但它们位于只能通过 SSH 使用密钥访问的服务器上 In Sequel Pro I connect to this remote DB something like this 我将如何配置我的 Laravel
  • 如何在 WordPress 中设置动态 `home` 和 `siteurl`?

    我使用动态配置多语言设置locale筛选 其中获取子域名来确定语言 function load custom language locale get the locale code according to the sub domain n
  • 用 python 生成/合成声音?

    是否有可能让 python 生成像正弦波这样的简单声音 有可用的模块吗 如果没有 您将如何创建自己的 另外 您是否需要某种主机环境让 python 运行才能播放声音 还是可以通过从终端进行调用来实现 如果答案取决于操作系统 我使用的是 Ma
  • 特征缩放后重新缩放,线性回归

    似乎是一个基本问题 但我需要在梯度下降线性回归的实现中使用特征缩放 获取每个特征值 减去平均值 然后除以标准差 完成后 我希望将权重和回归线重新调整为原始数据 我只使用一个特征 加上 y 轴截距项 使用缩放数据获得权重后 如何更改权重 以便
  • 使用 Wiremock 进行存根 - WithBodyFile 位置除 _files 之外

    Wiremock 文档指出 在中指定的文件的位置与正文文件应该在src 测试 资源 files 我想要文件src test resources Testing ABC Testcase2 myfile xml 有什么办法可以实现这个目标吗
  • 幻灯片内容/页面过渡

    我正在尝试重新创建就像他们在 gimmebar com 上克服的那样 https gimmebar com collection 4ecd439c2f0aaad734000022 front end styleguides 单击图像时 当前
  • 查找 Python 模块的源代码

    我使用 PyCharm 作为我的编辑器 似乎它的表现不佳某些子模块 https youtrack jetbrains com issue PY 13124 namely numpy random normal 不要灰心 我找到了哪里nump
  • 自定义会员资格提供程序中的 Unity 依赖项注入

    我有 ASP NET MVC3 项目 我想在其中使用自定义成员资格提供程序 我还想使用 Unity 来解决我的依赖注入问题 这是来自 Global asax 的代码 protected void Application Start Area
  • android: singleline = true 不适用于 edittext

    我想将编辑文本条目限制为一行 但是当我添加该行时android singleline true 提示消失 输入26个字符后光标向下 这是我的 XML 代码
  • AngularJS 指令从控制器访问属性

    我正在尝试访问控制器函数中指令的属性 然而 当我访问它时 它是未定义的 我注意到如果我做一个简单的计时器它就可以工作 有没有办法仅在指令及其范围准备好并设置为使用之后才执行代码 我摆弄了它 确保您的控制台已打开 http jsfiddle
  • 将值从一种形式传递到另一种形式 (C#)

    我的程序中有一个搜索表单 当用户双击搜索表单上的 dgv 的 单元格时 我希望程序关闭该表单并跳转到主表单上的项目 我通过使用唯一的 ID 来标识每个项目来做到这一点 我正在尝试将行 id 的值传递给其他表单 问题是 它说我每次都传递零值
  • 错误:获取临时地址 [-fpermissive]

    我已经研究了这个问题几个小时 但毫无结果 基本上我有 struct rectangle int x y w h rectangle player RegionCoordinates Region Coord rectangle temp t
  • BeautifulSoup:只要进入标签内部,无论有多少个封闭标签

    我正在尝试从 中删除所有内部 html p 使用 BeautifulSoup 的网页中的元素 有内部标签 但我不在乎 我只想获取内部文本 例如 对于 p p Red p p i Blue i p p Yellow p p Light b g
  • 如何将 utf16 ushort 数组转换为 utf8 std::string?

    目前我正在编写一个插件 它只是现有库的包装器 插件的主机向我传递一个 utf 16 格式的字符串 定义如下 typedef 无符号短 PA Unichar 并且包装的库仅接受 const char 或 std string utf 8 格式
  • 使用 c++ std::unique_ptr<> 或 std::shared_ptr<> 管理 Objective-C 对象

    Objective C 可以在某种程度上与 C 混合 可以互相打电话 https stackoverflow com q 1061005 1792701 但 Objective C 对象仍然或多或少是手动管理的 并且 RAII 习惯用法在该
  • 有没有一种非常简单的方法来处理 EDIFACT(例如 D96A)?

    我们是一家使用 XML 接口等现代技术的现代化公司 但我们的许多客户希望我们提供 EDIFACT 格式 如 D96A 的电子发票 不 我们不能使用现有的库 因为它们不是用我们的 Navision 软件使用的 C AL 编程语言编写的 因此
  • 使用 google gson 进行 json 对象序列化/反序列化

    我想将 java 对象序列化为 json 或从 json 反序列化 谷歌 gson 更好 让我有A类 class A int x 1 int y 2 然后 如果我调用 new Gson toJson new A 我将得到以下结果 x 1 y