Google Protocol Buffer 使用

Google Protocol Buffer使用

关键语义

语义 名称
emun 枚举类
message java类定义
optional,require,repeated 数据类型,对象引用
import 引用其他proto文件
package 对应生成java类的包名
optional java_package 定义编译后产生的文件所在包结构的,即编写生成后的java文件所在的目录(多层次结构)
optional java_outer_classname 编译生成的java文件名称
sevice 暂时不知道功能,后续查阅后补充

类型转换对应关系

protoc类型 Java类型
double double
float float
int32 int
int64 long
uint32 int
uint64 long
sint32 int
sint64 long
fixed32 int
fixed64 long
sfixed32 int
sfixed64 long
bool boolean
string String
bytes ByteString

编译命令

protoc --proto_path=IMPORT_PATH --cpp_out=DST_DIR --java_out=DST_DIR --python_out=DST_DIR path/to/file.proto

--proto_path=IMPORT_PATH 默认当前目录
--cpp_out 生成的c++文件目录
--java_out 生成的java文件目录
--pytho_out 生成的python文件目录

总结

    protocol buffer的使用还是相对简单点,唯一麻烦的就是多了一个预编译的过程,将.proto文件转换成java文件或c++文件。但有的时候,这些过程是必须的。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章