网络上数据传输格式多种多样,protobuf/json/XML等。json和XML就不多说了,平时用的很多,现在简单介绍下protobuf,刚好项目中要用到。为什么呢,简单、高效、自定义数据结构等等好处多多。
入门实例:
1.下载protoc.exe 和 protobuf-java-2.4.1.jar,放入E:/protobuf
下载地址: https://pan.baidu.com/s/1pLMCbW3
2.新建一个person.proto文件
option java_package = "com.yc.test";
option java_outer_classname = "Persons";
message PersonInfo {
required int32 id = 1;
required string name = 2;
}
3.生成java文件。在cmd中执行命令E:\protobuf>protoc.exe --java_out=./ person.proto
4.把生成的Persons.java文件拷贝的项目中,创建Test文件
import com.google.protobuf.InvalidProtocolBufferException;
import com.yc.test.*;
public class Test {
public static void main(String[] args) {
Persons.PersonInfo.Builder builder=Persons.PersonInfo.newBuilder();
builder.setId(1);
builder.setName("huyc");
Persons.PersonInfo info=builder.build();
byte[] result=info.toByteArray();
System.out.println("==========="+result);
try {
Persons.PersonInfo msg = Persons.PersonInfo.parseFrom(result);
System.out.println(msg.getId());
System.out.println(msg.getName());
} catch (InvalidProtocolBufferException e) {
e.printStackTrace();
}
}
}
5.运行程序,查看控制台