找回密码
 立即注册
查看: 374|回复: 0

protobuf基础语法

[复制链接]
发表于 2021-10-21 09:11 | 显示全部楼层 |阅读模式
protobuf基础语法
syntax ="proto3"; // 指明我们使用的语法 有proto2 proto3// 定义包的包名package pb;option go_package = "./;pb";// 定义消息体message Student{int32 age =1; // 年龄 编号不能重复 -- 编号19000 - 19999不能使用  string name =2; // 姓名  Hobby h =3; // 爱好  repeated int32 scores =4; // 数组  Week w =5; //枚举  // 联合体  oneof data{string teacher =6;    string class =7;  }}// 消息体嵌套message Hobby{string name =1; // 爱好名称  string old =2; // 爱好有多少年了}// 枚举enum Week{MonDay =0; // 枚举编号必须从0开始  Tuesday =1;}
注意事项:
    message 编号可以不从1开始。但是不能重复。-- 编号19000-19999不能使用。可以使用message 嵌套。定义数组、切片使用 repeated 关键字。可以使用枚举 enum。可以使用联合体。oneof关键字。成员编号不能重复且必须从0开始。
编译命令


protoc --go_out= ./ *.proto  --->  在当前文件下生成xxx.pb.go 文件

注意:如果要编译器生成grpc服务,需要使用下面的命令

protoc --go_out=plugins=grpc:./ *.proto
懒得打字嘛,点击右侧快捷回复 【右侧内容,后台自定义】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Unity开发者联盟 ( 粤ICP备20003399号 )

GMT+8, 2024-11-24 20:12 , Processed in 0.087019 second(s), 25 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表