Protocol Buffers 介绍

Posted coding400

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Protocol Buffers 介绍相关的知识,希望对你有一定的参考价值。

  什么是Protocol Buffers?

官方翻译:协议缓冲区是Google的语言中立,平台中立,可扩展的机制,用于序列化结构化数据 - 像XML,但更小,更快,更简单。 您可以定义数据的结构化时间,然后可以使用特殊生成的源代码轻松地在各种数据流中使用各种语言编写和读取结构化数据。(类似xml,json 用于端到端的数据传输载体,速度更快、更轻量级,缺点:可读性较差)

 

      如何使用?

  简单例子:

    Proto数据格式:

message Person {
  required string name = 1;
  required int32 id = 2;
  optional string email = 3;
}

         转换成Java类:

Person john = Person.newBuilder()
    .setId(1234)
    .setName("John Doe")
    .setEmail("[email protected]")
    .build();
output = new FileOutputStream(args[0]);
john.writeTo(output);

    

    如何安装?(window平台)

  1. 到该页面(https://github.com/google/protobuf/releases/tag/v3.6.0)下载  protoc-3.6.0-win32.zip
  2.  解压,打开bin目录,将 protoc.exe放于类路径下(放到系统变量的path路径下)
  3.  完成以上两步之后,打开cmd ,输入:protoc -version ,如果输出了版本号,就ok

    如何编写 .proto文件?

       proto3  官方标准 文档

    如何运行?

    使用protoc 用Protocol buffers 协议编译为.java文件


以上是关于Protocol Buffers 介绍的主要内容,如果未能解决你的问题,请参考以下文章

如何从 Protocol Buffers .NET 代码生成 .proto 文件?

protobuf(Protocol Buffers).proto文件中的IDL(Interface Definition Language 接口定义语言)是什么?

Protocol Buffers:编码与解码

Protocol buffers--python 实践 protocol buffers vs json

Protocol Buffers 了解一下?

protocol buffers 使用方法