使用 Jackson 作为序列化

通过配置 akka.actor.serialization-bindings 指定特定的数据类型(及子类型)在远程通信中使用已配置的序列化工具。

akka.actor {
  serialization-bindings {
    "cookbook.json.CborSerializable" = jackson-cbor
    "cookbook.json.JsonSerializable" = jackson-json
  }
}

这里配置了两个 trait 分别使用 jackson-cborjackson-json 序列化方式,这两种序列化方式为 Akka 内置的序列化器。需要加入以下依赖使用:

sbt
libraryDependencies += "com.typesafe.akka" %% "akka-serialization-jackson" % "2.6.4"
Maven
<dependency>
  <groupId>com.typesafe.akka</groupId>
  <artifactId>akka-serialization-jackson_2.13</artifactId>
  <version>2.6.4</version>
</dependency>
Gradle
dependencies {
  compile group: 'com.typesafe.akka', name: 'akka-serialization-jackson_2.13', version: '2.6.4'
}

TODO

在此文档中发现错误?该页面的源代码可以在 这里 找到。欢迎随时编辑并提交Pull Request。