Tag: 序列化

Ruby对象和JSON序列化(不含Rails)

我想了解Ruby中的JSON序列化格局。 我是Ruby的新手。 如果您不使用Rails,是否有任何好的JSON序列化选项? 这似乎是这个答案去(Rails) 如何将一个Ruby对象转换为JSON JSONgem似乎使它看起来像你必须编写自己的to_json方法。 我还没有能够得到to_json来处理数组和散列(文档说,它与这些工作)是否有一个原因,JSONgem不只是反映在对象和使用默认的序列化策略? 这不是如何to_yaml工作(猜测这里)

提升序列化与谷歌协议缓冲区?

有这些图书馆经验的人有没有评论他们喜欢哪一个? 在使用中是否存在性能差异或困难?

如何解决hibernate双向映射引起的JSON串行器中的循环引用?

我正在编写序列化程序来将POJO序列化为JSON,但是却陷入了循环引用问题。 在hibernate双向一对多关系中,父类引用子对象和子对象引用,回到父对象,这里我的序列化器就死掉了。 (请参阅下面的示例代码) 如何打破这个循环? 我们可以得到一个对象的所有者树来查看对象本身是否存在于它自己的所有者层次中的某个地方? 任何其他方式来find参考是否将是循环? 或任何其他想法来解决这个问题?

如何使用ArrayList <Parcelable>正确实现Parcelable?

我有麻烦让我的课程Parcelable 。 麻烦的是,我正试图在类中写入一个ArrayList<Parcelable>对象的成员。 ArrayList是Serializable ,列表中的对象( ZigBeeDev )是ZigBeeDev 。 这是相关的代码: package com.gnychis.coexisyst; import java.util.ArrayList; import java.util.Iterator; import android.os.Parcel; import android.os.Parcelable; public class ZigBeeNetwork implements Parcelable { public String _mac; // the source address (of the coordinator?) public String _pan; // the network address public int _band; // the channel ArrayList<Integer> _lqis; // link quality indicators (to […]

使用Json.NET转换器来反序列化属性

我有一个类定义,其中包含一个返回接口的属性。 public class Foo { public int Number { get; set; } public ISomething Thing { get; set; } } 尝试使用Json.NET序列化Foo类给了我一个错误消息,例如“无法创buildtypes为”ISomething“的实例,ISomething可能是一个接口或抽象类。 是否有一个Json.NET属性或转换器,让我指定一个具体的Something在反序列化过程中使用的类?

为什么在我的Rails多选中,第一个元素总是空白,使用embedded式数组?

我正在使用Rails 3.2.0.rc2 。 我有一个Model ,其中我有一个静态Array ,我通过一个表单提供,使用户可以select一个Array的子集,并将其select保存到数据库,存储在Model中的单个列。 我已经在存储Array的数据库列上使用了序列化,并且Rails将用户的select正确地转换为Yaml(并在读取该列时返回到数组)。 我正在使用多选表单input来进行select。 我的问题是,我现在拥有它的方式,一切正常,除了用户的子集数组发送到服务器时总是有一个空白的第一个元素。 这不是什么大不了的事情,而且我可以编写代码以在事实之后将其切断,但是我觉得我只是在制造某种语法错误,因为在我看来,默认的Rails行为并不是故意的没有任何理由添加这个空白元素。 我一定错过了某些东西,或者忘了禁用某种设置。 请帮助我了解我所缺less的东西(或者指出一些很好的文档,这些文档比我在intertubes上find的更深入)。 MySQL数据库表“模型”: 包括一个名为subset_array的列,它是一个TEXT字段 类模型包括以下设置: serialize :subset_array ALL_POSSIBLE_VALUES = [value1, value2, value3, …] 表单编辑模型包括以下input选项: f.select :subset_array, Model::ALL_POSSIBLE_VALUES, {}, :multiple => true, :selected => @model.subset_array 从客户端PUT到服务器看起来像这样: 假定只select了value1和value3 "model" => { "subset_array" => ["", value1, value3] } 数据库更新如下所示: UPDATE 'models' SET 'subset_array' = '— \n- \"\"\n- value1\n- […]

为什么java.util.Optional不是Serializable,如何用这些字段序列化对象

Enum类是可序列化的,因此使用枚举序列化对象没有问题。 另一种情况是类有java.util.Optional类的字段。 在这种情况下,会引发以下exception:java.io.NotSerializableException:java.util.Optional 如何处理这样的类,如何序列化它们? 是否有可能发送这样的对象到远程EJB或通过RMI? 这是一个例子: import java.io.ByteArrayOutputStream; import java.io.IOException; import java.io.ObjectOutputStream; import java.io.Serializable; import java.util.Optional; import org.junit.Test; public class SerializationTest { static class My implements Serializable { private static final long serialVersionUID = 1L; Optional<Integer> value = Optional.empty(); public void setValue(Integer i) { this.i = Optional.of(i); } public Optional<Integer> getValue() { return value; } […]

如何反序列化时从json中删除k__BackingField

在将xml文件序列化为.net c#对象之后,我得到了返回的json中的k_BackingField。 我已经将DataContract和DataMember属性添加到.net c#对象,但是在json,客户端上我什么也没有得到。 [XmlRoot("person")] [Serializable] public class LinkedIn { [XmlElement("id")] public string ID { get; set; } [XmlElement("industry")] public string Industry { get; set; } [XmlElement("first-name")] public string FirstName { get; set; } [XmlElement("last-name")] public string LastName { get; set; } [XmlElement("headline")] } 返回的json的例子: home: Object <FirstName>k__BackingField: "Storefront" <LastName>k__BackingField: "Doors"

DataContractSerializer vs XmlSerializer:每个序列化程序的优点和缺点

我的桌面应用程序使用XmlSerializer序列化对象。 build议我改用DataContractSerializer 。 我应该在哪种情况下使用DataContractSerializer ? 非常感谢 注释。 1.输出XML文件存储在本地。 没有其他应用程序反序列化来自该XML文件的对象。 2.我的应用程序与.NET Framework 3.5 SP1一起运行。

使用Serializable属性和实现ISerializable有什么区别?

使用Serializable属性和实现ISerializable接口有什么区别?