【问题标题】:Create a Scala class/object and serialize it创建一个 Scala 类/对象并将其序列化
【发布时间】:2014-11-05 00:08:17
【问题描述】:

我需要同时保存/序列化三个数据结构 [即,一个 DenseVector、一个 DenseMatrix 和一个双精度],然后检索它们。可能我需要用这三个成员在 Scala 中创建一个类,创建一个对象并最终序列化该对象。在 Scala 中还有其他/更好的方法可以做到这一点吗?

感谢和问候,

【问题讨论】:

  • 使用 JSON。 argonaut.io
  • @Falmarri:对于不是很小的矩阵或向量,JSON 不太可能是一个特别好的解决方案。

标签: class scala serialization deserialization scala-breeze


【解决方案1】:

如果您不需要担心二进制兼容性(它不需要存储很长时间等),那么只使用 Tuple3 然后使用 Java 内置的序列化工具可能是安全的。那是假设您不需要它尽可能小...

【讨论】:

    【解决方案2】:

    最简单的方法是将这些类创建为案例类,默认情况下案例类是可序列化的。你可以看到使用 jackson here 编组/解组的好文章

    或使用liftweb:

    import net.liftweb.json._
      import Extraction._
    
    implicit val formats = DefaultFormats
    
    case class Foo(String name)
    val foo = Foo("John")
    val json:JValue = decompose(foo) 
    
    unmarshal
    val fooFromJson:Foo = json.extract[Foo]
    println(fooFromJson.name) //result John
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2022-01-15
      • 2015-11-14
      • 1970-01-01
      • 2017-09-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-12-14
      相关资源
      最近更新 更多