apache / dubbo

The java implementation of Apache Dubbo. An RPC and microservice framework.
https://dubbo.apache.org/
Apache License 2.0
40.48k stars 26.43k forks source link

返回值和参数(自定义引用类型)必须实现java.io.serializable吗 #4193

Closed liuhuagui closed 5 years ago

liuhuagui commented 5 years ago

通过官方文档得知,dubbo协议的默认序列化方式为hessian2,或者说是hessian lite,它本身的序列化是不需要类去实现java.io.Serializable的,那么在dubbo开发中返回值或参数(自定义的引用类型),还需要实现java.io.Serializable吗,记得最初使用dubbo 2.5.10时,是会报错的,那么当前版本还需要吗?

web1992 commented 5 years ago

现在的版本也必须实现java.io.Serializable

liuhuagui commented 5 years ago

那么此时的java.io.Serializable是用于序列化,还是考虑到与java序列化的兼容性,还是仅仅就是个约定

web1992 commented 5 years ago

应该是为了考虑兼容,比如java原生的序列化协议必须实现java.io.Serializable,同时 dubbo 也是支持原生的序列化协议的。如果有的实现了,有的不实现,dubbo 将无法兼容各种不同的序列化技术。

liuhuagui commented 5 years ago

理解了,多谢了