Xml 在Scala中选择对象序列化格式
我有一个管理节点和圆弧图的应用程序,其中节点具有少量属性。现在我需要保存数据,并且需要选择序列化格式。这里列出了一些显而易见的问题,但可能还有其他问题我没有考虑Xml 在Scala中选择对象序列化格式,xml,json,scala,serialization,yaml,Xml,Json,Scala,Serialization,Yaml,我有一个管理节点和圆弧图的应用程序,其中节点具有少量属性。现在我需要保存数据,并且需要选择序列化格式。这里列出了一些显而易见的问题,但可能还有其他问题我没有考虑 Java序列化 XML JSON 亚马尔 谷歌协议缓冲区 由于许多原因,Java序列化是一种非初学者,即使在Java世界中,出于互操作性、模式迁移和易用性的原因,XML和其他序列化格式也是首选格式 Scala的XML支持似乎是一个显而易见的选择。然而,我个人觉得在源代码中嵌入XML文本的想法令人反感(甚至语言的创建者也承认他对这个决
- Java序列化
- XML
- JSON
- 亚马尔
- 谷歌协议缓冲区
最后,我已经将GoogleProtobufs用于许多其他序列化任务。好的方面是protoc编译器可以生成与目标语言的习惯用法相匹配的优雅api。然而,在这种情况下,protobufs的优点之一,即编码数据流的小尺寸,并不重要,我更希望序列化数据是人类可读的。在我看来,JSON在Scala世界中是一种流行的选择,特别是Play框架提供的基于类型类的API:所以我对Play的范围有点困惑;如果可能的话,我希望添加最小的依赖项,而不是依赖于一些巨大的框架(特别是考虑到这是一个Swing应用程序,而不是web应用程序)。理想情况下,我希望能够将一个.jar文件放到我的Eclipse项目中,而不必处理Maven或sbt之类的问题。我一直在研究的其他一些库似乎需要很多基础设施才能将它们整合到一个项目中。嗯,不知怎么的,我觉得Play被适当地模块化了,但我似乎错了检查sjson()、lift json()、Jerkson()。Jerkson和spray json看起来都非常好,但是我不知道如何将它们合并到我的Eclipse项目中——我能找到的唯一可以下载的jar文件是Maven build工件,它们显然不是普通的jar。如果您绝对不想,您可以从和下载Scala 2.10的spray json,以及Parboile lib的2个文件(spray json需要这些文件)。