protobuf安装和简单使用

柔光的暖阳◎ 2023-06-30 02:49 79阅读 0赞

安装

在网站 http://code.google.com/p/protobuf/downloads/list上可以下载 Protobuf 的源代码。然后解压编译安装便可以使用它了。

安装步骤如下所示:

  1. ##yum组,找到Development tools
  2. yum grouplist
  3. ##查看Development tools
  4. yum groupinfo Development tools
  5. ##安装组,组内所有依赖将被安装
  6. yum groupinstall Development tools -y
  7. ##解压protobuf压缩包
  8. tar -xzf protobuf-2.5.0.tar.gz
  9. ##进入protobuf解压文件中
  10. cd protobuf-2.5.0
  11. ##对即将安装的软件进行配置,检查当前的环境是否满足要安装软件的依赖关系
  12. ./configure
  13. ##编译并安装
  14. make && make install
  15. ##查看安装目录
  16. whereis protoc

编写一个proto 文件,后缀名必须为 .proto,放在 /root 目录下

  1. package com.hbase.test;
  2. message callLogs
  3. {
  4. required string duiFangPhoneNum=1;//对方手机号
  5. required string ctime=2;//通话时间
  6. required string calltime=3;//通话时长
  7. required string type=4;//类型 0主叫 被叫
  8. }

在上例中,package 名字叫做 com.hbase.test ,定义了一个消息 callLogs (类名),该消息有4个成员(字段),类型为string。required 必选,而optional 是一个可选的成员,即消息中可以不包含该成员。

编译.proto文件

  1. ##进入到 /root 目录下
  2. cd ~
  3. ##查看protoc帮助文档
  4. /usr/local/bin/protoc --help
  5. ##编译 --java_out=OUT_DIR指定文件输出路径, 生成java
  6. /usr/local/bin/protoc callLogs.proto --java_out=/root/

java中使用

watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzIyMDQ5Nzcz_size_16_color_FFFFFF_t_70

升级使用

callLogsCollection 中的对象属性 callLogs是一个list

  1. package com.hbase.test;
  2. message callLogs
  3. {
  4. required string duiFangPhoneNum=1;//对方手机号
  5. required string ctime=2;//通话时间
  6. required string calltime=3;//通话时长
  7. required string type=4;//类型 0主叫 被叫
  8. }
  9. message callLogsCollection
  10. {
  11. repeated callLogs callLogsCollection=1;//嵌套
  12. }

使用

watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzIyMDQ5Nzcz_size_16_color_FFFFFF_t_70 1

读取profobuf类型存储的数据

watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzIyMDQ5Nzcz_size_16_color_FFFFFF_t_70 2

发表评论

表情:
评论列表 (有 0 条评论,79人围观)

还没有评论,来说两句吧...

相关阅读

    相关 protobuf简单使用

    一、介绍         首先,protobuf是一个开源项目,而且是后台很硬的开源项目。网上现有的大部分(至少80%)开源项目,要么是某人单干、要么是几个闲杂人等合伙搞。而