问题
最近在dubbo接口扩展上遇到了问题。dubbo的参数及返回对象,肯定是要可序列化的,即实现Serializable接口。需求是需要在接口参数中,加入一个字段,但是担心对原来的consumer产生影响,因此对java序列化进行了一下梳理测试。
顺便说下关于dubbo接口扩展碰到的这个问题,有几点收获:
- 接口的传参,尽量用对象代替多个简单类型的参数,后者不便于加参数
- 返回数据,同样尽量用对象代替简单类型
- 更好的参数或返回数据扩展方案,应该是采用继承原有参数或返回类型的方式
序列化
java序列化,就是将java对象序列化为字节流,可以进行传递或者保存,在使用方对结果进行反序列化,从而获取到原来对象的属性值。
在需要将内存中对象保存到文件,或者直接传输对象时,会用到序列化。dubbo就是在provider和consumer之间传递对象数据。