![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Protobufs
Demi_nini
这个作者很懒,什么都没留下…
展开
-
Google Protobufs(3) - 使用反射机制给Message赋值
写一下大致的思路,就是根据map中的key去匹配Message中的field,如果有就根据类型去赋值。有需要的可以参考下这个思路。 public static void main(String[] args) throws IOException { Map<String, String> value = new HashedMap(); value.put("int_value","11"); value.put("enum_v.原创 2021-04-26 17:18:01 · 748 阅读 · 0 评论 -
Google Protobufs(2) - parseDelimitedFrom vs CodedInputStream
如果你的输入流中由多组定界消息组成,形如下结构:其中Delimiter是下一个Event的数据长度。可以直接调用writeDelimitedTo(),传入你的对象即可。protobufs会自己计算出数据长度,写成delimiter。同样,用parseDelimitedFrom()就可以开箱即用得读取数据,你并不需要关系Delimiter是多少。下面两者方式一样。parseDelimitedFrom就是parseFrom(CodedInputStream)的一层封装。(Ref: A.原创 2021-04-26 16:25:34 · 805 阅读 · 0 评论 -
Google Protobufs(1) - maven工程使用protoc插件编译proto文件
maven 工程将proto文件编译成java文件1.使用os-maven-plugin +protobuf-maven-plugin使用os-maven-plugin插件,获取操作系统信息,之后调用对应的protoc编译器。outputDirectory:java文件的输出根目录;具体的java路径还要结合proto文件中的package信息;protoSourceRoot:指明proto的文件路径;<build> <extensions>..原创 2021-04-26 16:36:30 · 1820 阅读 · 0 评论