java - 我可以用基本 GSON 代替基本对象输入/输出流吗?

标签 java serialization gson

如果我只是放入 .toJson.fromJson 而不是使用 .writeObject.readObject,我会得到相同的结果吗?
此外,您可以将其放入要序列化的类中的 readObjectwriteObject 方法的 GSON 等效项是什么?

最佳答案

Gson 不支持继承或循环引用,不足以成为 Java 序列化的直接替代品。

对于继承,请使用RuntimeTypeAdapterFactory将类名编码为 JSON 值。

对于循环引用,您可以使用 GraphAdapterBuilder通过引用而不是值对值进行编码。

这些文件都不包含在 Gson 发行版中。如果您想使用它们,则需要将它们复制并粘贴到您的应用中。

关于java - 我可以用基本 GSON 代替基本对象输入/输出流吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14035630/

相关文章:

java - 使用Java 7 nio读写文件

Java 抵押贷款计算器读取连续文件

java - 如何在java的rest调用中将Map作为requestBody发送

java - 有没有办法在 Java 中反序列化对象的一部分?

Java JSONParser 区分对象类型

php - 将 PHP 序列化从 PHP 5.3 迁移到 PHP 5.6

java - HelloAnalytics 代码的 Maven 构建失败

java - GSON,禁用特定字段/变量的反序列化并将 json 保存为字符串

java - 计算字符串出现次数的最佳方式/数据结构

java - 为什么执行代码后bike1,3的值是?