要学习,了解它 . 首先要了解它能解决什么问题..
Protocol Buffer(以下简称PB)是google 的一种数据交换的格式,它独立于语言,独立于平台。google 提供了三种语言的实现:java、c++ 和 python,每一种实现都包含了相应语言的编译器以及库文件。由于它是一种二进制的格式,比使用 xml 进行数据交换快许多。可以把它用于分布式应用之间的数据通信或者异构环境下的数据交换。作为一种效率和兼容性都很优秀的二进制数据传输格式,可以用于诸如网络传输、配置文件、数据存储等诸多领域。本文的分析基于google发布的源码2.0.1版本。
windows7 安装 protocol buffer (如果没有安装Maven,先安装maven,并且maven -version 验证安装成功)
download :http://maven.apache.org/
在开始之前,先下载源码与编译器:(-- current Version : 2.5.0)
https://code.google.com/p/protobuf/downloads/list ----(protoc-2.5.0-win32.zip - protobuf-2.5.0.zip )
两个压缩包:前者为编译器,后者为开发使用的包.
1、解压protoc-2.5.0-win32.zip得到proto.exe . (--添加path,验证安装成功 : protoc --version)
2、解压protobuf-2.5.0.zip
3、将proto.exe文件拷贝到解压后的protobuf-2.5.0\src目录中protobuf-2.5.0
4、Dos进入protobuf-2.5.0\java 目录 执行maven package命令编辑该包 生成protobuf-java-2.5.0.jar文件(位于protobuf-2.5.0\java\target目录中)。
--- 安装完成
脚本解析:
java_package: 定义编译成xx.java文件的包名
java_outer_classname : 编译java的类名
required : 用这个修饰符来标注的字段必须给该字段提供一个值,否则该消息会被认为未被初始化。尝试构建一个未被初始化的消息会抛异常 .
optional : 用这个修饰符来标注的字段可以设定值,也可以不设定值。如果可选字段的。值没有设定,那么就会使用一个默认的值。
repeate : 用这个修饰符来标注的字段可以被重复指定的数字的次数(包括 0)。重复值的顺序会被保留在 ProtocolBuffer 中。重复字段跟动态数组很像。(一般用户集合对象定义类型)
支持的简单数据类型:
......... 待更新 .....