Protobuf

1.maven
<dependency>
  <groupId>com.google.protobuf</groupId>
  <artifactId>protobuf-java</artifactId>
  <version>3.3.0</version>
</dependency>
2.編輯person_entity.proto文件
syntax = "proto2";

option java_package = "com.boomsecret.protobuf.proto";
option java_outer_classname = "PersonEntity";

message person_entity {
    required int32 id = 1;  // ID
    required string name = 2;   // 姓名
    optional string email = 3;  // 郵箱
}
3.下載protoc.exe,并生成.java文件
https://github.com/google/protobuf/releases
protoc.exe --java_out=.\..\src\main\java .\proto\person_entity.proto

(com.boomsecret.protobuf.proto.PersonEntity.java)
4.小李子
public class ProtoBufDemo {
    public static void main(String[] args) {
        PersonEntity.person_entity.Builder builder = PersonEntity.person_entity.newBuilder();
        builder.setId(100);
        builder.setName("jack");
        builder.setEmail("jack@email.com");

        person_entity personEntity = builder.build();
        System.out.println(personEntity.toString());

        byte[] bytes = personEntity.toByteArray();
        for (byte index : bytes) {
            System.out.print(index);
        }
        System.out.println();

        try {
            person_entity parsePersonEntity = person_entity.parseFrom(bytes);
            System.out.println(parsePersonEntity);
        } catch (InvalidProtocolBufferException e) {
            e.printStackTrace();
        }
    }
}
5.總結
protobuf比xml和json效率高很多,具體可以去了解下,這里不做詳細介紹。
最后編輯于
?著作權歸作者所有,轉載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內(nèi)容

  • Protobuf是什么? 官網(wǎng)解釋 Protobuf 是Google為序列化數(shù)據(jù)結構提供的語言無關,平臺無關,可擴...
    鄺健強閱讀 2,629評論 0 4
  • protobuf初見 今天由于偶然的機會,了解到Google的protobuf,貌似功能很強大。主要作用是自動生成...
    跨界師閱讀 769評論 0 0
  • 前言 之前看zk源碼就有提到,最近看《netty權威指南》又看到了這個東西,就初步研究下。本篇只講解demo的準備...
    赤子心_d709閱讀 701評論 0 1
  • 什么是protobuf 簡單講就是一種類似于json,xml的通用數(shù)據(jù)交換格式,但是效率更高,更省空間,目前官方支...
    Angelo嚴閱讀 2,182評論 0 1
  • ProtoBuf: 是一套完整的 IDL(接口描述語言),出自Google,基于 C++ 進行的實現(xiàn),開發(fā)人員可以...
    謝煙客閱讀 20,347評論 3 16

友情鏈接更多精彩內(nèi)容