protobuf java代码生成方法及代码实例

下一篇:很抱歉没有了

最近项目上使用google的protobuf( Protocol Buffers )是一种文本格式,据说效率比较高。

下面介绍一下在java中如何使用protobuf

1.下载所protobuf jar包,protobuf代码生成工具

 

protoc.exe是生成代码的工具

protobuf-java-2.5.0.jar是java代码依赖的jar包

2.创建UserProtobuff.proto文件 内容如下:

message User{                                                                                   
    required string userName = 1[default=""];                                                                               
    required string password = 2[default=""];                                                                               
}                                                                       
把protoc.exe放到UserProtobuff.proto的同级目录下

在cmd运行如下命令

protoc.exe --java_out c:\logs\  UserProtobuff.proto

--java_out 是文件输出到那个目录下

生成的java代码UserProtobuff.java拷贝到项目目录

然后使用protobuf生成二进制内容和根据二进制内容生成user对象的代码方法如下:

public class ProtobufTest {

	/**
	 * @param args
	 */
	public static void main(String[] args) throws Exception {
		UserProtobuff.User.Builder user = UserProtobuff.User.newBuilder();
		user.setUserName("test");
		user.setPassword("123");
		//生成二进制内容
		byte[] bytes = user.build().toByteArray();
		
		//根据二进制内容生成user对象
		UserProtobuff.User parseUser = UserProtobuff.User.parseFrom(bytes);
		System.out.println(parseUser.getUserName());
	}

}
来源://作者:/更新时间:2015-06-11
相关文章
评论:
验证码:
匿名评论: