首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 其他教程 > 开源软件 >

Protobuf学习札记

2012-06-27 
Protobuf学习笔记1.下载protobuf源码和编译后的windows文件:protobuf-2.4.1.ziphttp://code.google.com/p/

Protobuf学习笔记

1.下载protobuf源码和编译后的windows文件:

protobuf-2.4.1.ziphttp://code.google.com/p/protobuf/downloads/detail?name=protobuf-2.4.1.zip&can=2&q=protoc-2.4.1-win32.ziphttp://code.google.com/p/protobuf/downloads/detail?name=protoc-2.4.1-win32.zip&can=2&q=

2.解压文件,将protoc-2.4.1-win32.zip中解压出来的protoc.exe放到解压后的protobuf-2.4.1.zip

根目录中。文件路径为:

::解压路径\protobuf-2.4.1\protoc.exe。然后在CMD中执行:

protoc --java_out=java/src/main/java -I./src ./src/google/protobuf/descriptor.proto

这样会在解压的protobuf-2.4.1.zip的目录下的/java/src/main/java/com/google/protobuf中生

成DescriptorProtos.java文件,复制/java/src/main/java/下的com目录到你的eclipse工程中,

这样相当将Protobuf相关的jar包加入到项目中。

?

3.根据官网.proto例子生成相关的java代码。

官方给定的Protobuf的配置文件为:

package tutorial;option java_package = "author.estone.protobuffer";option java_outer_classname = "AddressBookProtos";message Person {  required string name = 1;  required int32 id = 2;        // Unique ID number for this person.  optional string email = 3;  enum PhoneType {    MOBILE = 0;    HOME = 1;    WORK = 2;  }  message PhoneNumber {    required string number = 1;    optional PhoneType type = 2 [default = HOME];  }  repeated PhoneNumber phone = 4;}// Our address book file is just one of these.message AddressBook {  repeated Person person = 1;}?

使用官方编译的win32代码生成器,生成上述配置的java代码。

?

protoc.exe –java_out=./  BaseUserRelation.proto

这样就可以在自己的项目中使用该类和Protobuf协议了。

热点排行