protobuf在Java中的简单使用

Protobuf在Java中的简单使用

 

1.      在Java中使用protobuf需要jar包,下载protobuf-Java-2.5.0.jar包文件,添加到项目中。另外需要protoc.exe来编译proto文件。jar包及测试代码地址: http://download.csdn.net/detail/yaoyuanyylyy/7581985 

2.      新建一个msg.proto文件:

package com.test.learn;
option java_package = "com.test.learn";
option java_outer_classname = "ProtoBufTest";

message msgInfo {
	required int32 ID = 1;
	required int64 GoodID = 2;
	required string Url = 3;
	required string Guid = 4;
	required string Type = 5;
	required int32 Order = 6;
}

3.      将msg.proto文件盒protoc.exe拷贝到同一目录下,然后使用下面的命令将msg.proto文件编译成Java类文件,可在当前目录下看到生成的ProtoBufTest.java文件:

protoc --java_out=./ msg.proto

4.      在项目中导入上一步生成的ProtoBufTest.java文件,并将protobuf-Java-2.5.0.jar库添加到项目中,编写测试文件进行测试:

5.      测试代码:

package com.test;

import com.google.protobuf.InvalidProtocolBufferException;
import com.test.learn.ProtoBufTest;

public class MainFile {
	public static void main(String[] args) {
		ProtoBufTest.msgInfo.Builder builder = ProtoBufTest.msgInfo.newBuilder();
		builder.setGoodID(100);
		builder.setGuid("11111-22222-33333-44444");
		builder.setOrder(0);
		builder.setType("item");
		builder.setID(10);
		builder.setUrl("http://www.baidu.com");
		ProtoBufTest.msgInfo msgInfo = builder.build();
		byte[] result = msgInfo.toByteArray();
		
		try {
			ProtoBufTest.msgInfo msg = ProtoBufTest.msgInfo.parseFrom(result);
			System.out.println(msg);
		} catch(InvalidProtocolBufferException e) {
			System.out.println(e.getMessage());
		}
		
	}
}



  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值