protocol buffer使用小例

前些天發現了一個巨牛的人工智能學習網站,通俗易懂,風趣幽默,忍不住分享一下給大家。點擊跳轉到教程。

、使用EditPlus定義好一份proto文件(用EditPlus是為了不出現亂碼),如下 :

?

package mypackage;

option java_package="proto.entity";
option java_outer_classname="Student";
//定義學生類有哪些屬性

message requset{

? ? required int32 ID=1;
? ? required string name=2;
? ? required string gender=3;
? ? repeated string address=4;
}
//返回學生名字

message response{

? ? required string name=1;

}

說明:proto.entity是生成的類文件存放的位置,Student是生成的類的類名,自己任意取名。requset、response是message 的名字,任意取名。

?

2、用protobuf編譯工具生成類文件:Student ?. ?java ?。(這個類不用看,就不貼上來了。)

?

3、使用實例:

package myStudent;

import java.util.ArrayList;
import java.util.List;

import com.google.protobuf.InvalidProtocolBufferException;


public class Test {

public ?String ?test ( ) throws InvalidProtocolBufferException {
?
Student .?requset?. Builder ?builder = Student . requset?. newBuilder() ;
builder . setID(2) ;
builder . setName("韓梅梅") ;
builder . setGender ("女") ;
List<String> address = new ArrayList<String>();
address . add ("成都") ;
address . add ("湖南") ;
builder . addAllAddress (address) ;

byte[ ] ?data = new byte [20] ;

data??= ?builder.build().toByteArray() ;

...

}
}

拿到data 可以作需要的操作。

?

?

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/452296.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/452296.shtml
英文地址,請注明出處:http://en.pswp.cn/news/452296.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

2000服務器文件共享,Win2000 Server實現對共享文件的監控

病毒的出現&#xff0c;使我們在共享文件時變得異常小心。那么&#xff0c;有沒有辦法監控共享文件的使用情況并加以管理呢&#xff1f;有&#xff0c;用Windows 2000 Server的文件共享監控功能就可以實現。Windows 2000 Server的共享管理功能在“計算機管理”中&#xff0c;它…

學成在線--1.CMS接口開發

文章目錄0.定義CMS1.CMS頁面管理2.需求分析3.模型類介紹4.定義請求及響應類型5.定義接口6.創建CMS工程結構7.Dao1&#xff09;創建Dao&#xff0c;繼承MongoRepository2&#xff09;編寫測試類分頁查詢測試添加刪除修改8.Service9.Controller10.接口開發規范0.定義CMS 1&#…

django 進階

django進階 django的分頁器 基礎語法&#xff1a; View Code簡單練習&#xff1a; View Code實例應用&#xff1a; View Code自定義分頁&#xff1a; View Codeform表單系統 原生form View CodeDjango表單系統中&#xff0c;所有的表單類都作為django.forms.Form的子類創建&…

BZOJ 2440: [中山市選2011]完全平方數

Time Limit: 10 Sec Memory Limit: 128 MB Submit: 5160 Solved: 2515 [Submit][Status][Discuss] Description 小 X 自幼就很喜歡數。但奇怪的是&#xff0c;他十分討厭完全平方數。他覺得這些 數看起來很令人難受。由此&#xff0c;他也討厭所有是完全平方數的正整數倍的…

如何減小與“大牛”的差距

為什么同樣的時間有的人可以漂亮的完成工作&#xff0c;而有些人廢了很大的力氣也沒有完成&#xff1f; 前者我們常常稱之為“大牛”&#xff0c;后者我們常常叫他們“菜鳥”。當然“大牛”都是相對而言的&#xff0c;“大牛”也不可能方方面面都非常厲害&#xff0c;換句話說大…

軟件再工程

軟件再工程是指對既存對象系統進行調查&#xff0c;并將其重構為新形式代碼的開發過程。最大限度地重用既存系統的各種資源是再工程的最重要特點之一。從軟件重用方法學來說&#xff0c;如何開發可重用軟件和如何構造采用可重用軟件的系統體系結構是兩個最關鍵問題。不過對再工…

武俠乂怎么修改服務器,武俠乂怎么操作 按鍵功能詳細介紹

武俠乂將在7月27日開啟限量測試了&#xff0c;入手前的第一件事情當然要熟悉操作按鍵了&#xff0c;下面給大家帶來的是武俠乂按鍵介紹&#xff0c;一起來看看吧。武俠乂將在7月27日開啟限量測試了&#xff0c;玩家們馬上就能體會到武俠吃雞的快感&#xff0c;除了吃雞模式外還…

RMI使用小例

前些天發現了一個巨牛的人工智能學習網站&#xff0c;通俗易懂&#xff0c;風趣幽默&#xff0c;忍不住分享一下給大家。點擊跳轉到教程。 1、定義一個接口&#xff08;繼承Remote&#xff09;&#xff1a; 方法要拋RemoteException。 package rmi; import java.rmi.RemoteEx…

產品經理和項目經理有哪些區別?

1.產品經理和項目經理的差異 首先&#xff0c;產品經理和項目經理的職責定義不太一樣。 產品經理是 Product Manager &#xff0c;主要是負責市場調研、用戶研究并根據用戶的需求&#xff0c;定義和設計產品&#xff0c;然后考慮產品的商業模式、運營推廣方式等。接下來去推動…

09-完整性約束

本節重點&#xff1a; not null 與 defaultuniqueprimaryauto_incrementforeign key一、介紹 約束條件與數據類型的寬度一樣&#xff0c;都是可選參數 作用&#xff1a;用于保證數據的完整性和一致性 主要分為&#xff1a; PRIMARY KEY (PK) #標識該字段為該表的主鍵&#x…

fread rb與r,wb,w的區別

在fread時&#xff0c;"rb"與"r"對某些字符作用&#xff0c;是不同的&#xff1b; 文本模式和二進制模式讀取不一樣的 文本&#xff1a;讀: 遇到回車-換行(0D 0A)&#xff0c;就會轉換為換行符0A 寫&#xff1a;遇到換行符0A&#xff0c;就會轉換為回車-換…

軟件正向工程

正向工程是通過實現語言的映射而把模型轉換為代碼的過程。正向工程也稱為革新或改造&#xff0c;這項活動不僅從現有程序中恢復設計信息&#xff0c;而且使用該信息去改變或重構現有系統&#xff0c;以提高其整體質量。 換句話說&#xff1a;一般工業產品開發是從確定預期功能…

學成在線--2.CMS前端頁面查詢開發

文章目錄0.思路總結1.創建CMS模塊的目錄架構2.創建頁面并配置路由1&#xff09;在page目錄新建page_list.vue&#xff0c;擴展名為.vue。2&#xff09;在cms的router下配置路由。3&#xff09;在base目錄下的router導入cms模塊的路由3.使用Table組件完善頁面內容4.Api調用服務器…

java.util.IdentityHashMap.entrySet()方法實例

前些天發現了一個巨牛的人工智能學習網站&#xff0c;通俗易懂&#xff0c;風趣幽默&#xff0c;忍不住分享一下給大家。點擊跳轉到教程。 entrySet() 方法是用來獲取此映射中包含的映射關系的set視圖。 聲明 以下是java.util.IdentityHashMap.entrySet()方法的聲明。 publ…

URL轉微信可識別的二維碼

jquery.qrcode.js 是一個能夠在客戶端生成矩陣二維碼QRCode 的jquery插件 &#xff0c;使用它可以很方便的在頁面上生成二維條碼。 用法&#xff1a; 1、引入jquery.qrcode.min.js <script src"jquery.min.js"></script> <script src"jquery.qrc…

javascript數組及操作方法

數組及操作方法 數組就是一組數據的集合&#xff0c;javascript中&#xff0c;數組里面的數據可以是不同類型的。 定義數組的方法 //對象的實例創建 var aList new Array(1,2,3);//直接量創建 var aList2 [1,2,3,asd];操作數組中數據的方法 1、獲取數組的長度&#xff1a;aLi…

如何創建比C語言更快的編程語言?

【CSDN編譯整理】近日&#xff0c;beza1e1上發表了一篇博客《Faster than C》&#xff0c;在Hacker News和Reddit Programming上引發了開發者們的激烈討論。現將此文編譯&#xff0c;我們一起來探討下。 單從編程語言特性來判斷&#xff0c;雖然Fortran語言也以快而著稱&#…

面向對象方法學

面向對象技術強調在軟件開發過程中面向客觀世界或問題域中的事物&#xff0c;采用人類在認識客觀世界的過程中普遍運用的思維方法&#xff0c;直觀、自然地描述客觀世界中的有關事物。 面向對象的分析方法是利用面向對象的信息建模概念&#xff0c;如實體、關系、屬性等&#x…

學成在線--3.CMS頁面管理開發(自定義條件查詢)

文章目錄0.需求分析1.服務端--Dao2.服務端--Service3.服務端--Controller4.前端1&#xff09;page_list.vue中增加查詢表單2&#xff09;page_list.vue中添加數據模型對象3&#xff09;在鉤子方法中構建siteList站點列5.Api調用1&#xff09;修改 cms.js&#xff0c;向服務端傳…

動態生成表格、隱藏表格、選中刪除任意行、jquery、輸入驗證

PS&#xff1a; 游戲公司后臺開發&#xff0c;工作模式&#xff1a;996。 于是寫博客這事也荒廢了.... 想想還是寫一點吧。 呵呵&#xff0c;請不要笑話我注釋寫這么多&#xff0c;習慣了&#xff0c;我上班寫代碼都是有注釋的。 我建兩個相似的表是為了&#xff0c;給后臺使…