JAVA操作google protobuf簡単な例

1079 ワード

test.protoファイルの作成
option java_package = "com.proto"; 
option java_outer_classname = "FirstProtobuf"; 
message TestBuf  { 
  required int32 ID = 1; 
  required string Url = 2; 
}


protoc.exeを使用してjavaファイルを生成するには:
protoc.exe --java_out=./ test.proto

テストクラスを書きます.
package com.test;

import java.io.IOException;
import com.proto.FirstProtobuf;
import com.proto.FirstProtobuf.TestBuf;

public class TestProtoBuf {

	public static void main(String[] args) throws IOException {
		//      
		//FirstProtobuf       , proto    java_outer_classname 
		//testBuf          , proto    message testBuf 
		
		FirstProtobuf.TestBuf.Builder builder = FirstProtobuf.TestBuf.newBuilder();
		
		builder.setID( 123 );
		builder.setUrl("http://www.21cn.com");
		
		TestBuf info = builder.build();
		byte[] buf = info.toByteArray();
		
		TestBuf tb = TestBuf.parseFrom(buf);
		System.out.println( tb.getID());
		System.out.println( tb.getUrl());
	}
}