Protobuf - 序列化和参数的不同参数命名。 desirialization

时间:2014-09-29 14:05:54

标签: java serialization protocol-buffers naming

我使用protobufs来表示某些对象以进行序列化。我有一个客户端和一个向他发送消息的服务器。 只要我保留ID,是否可以更改参数的名称?

那是 -

客户端(在其中) - message Example { optional int64 a = 1;}

服务器(在它的jar中) - message Example { optional int64 b = 1;}

这会起作用(序列化/反序列化)吗? (我想在命名更改之前确定)

谢谢!

1 个答案:

答案 0 :(得分:1)

只要您使用二进制格式(通常是默认值),是的 - 这应该没问题;二进制协议从不包含名称 - 它只涉及字段编号。因此,任何名称都完全是本地化的serailization / deserialization代码,它将1映射到ab