java對象轉(zhuǎn)成byte數(shù)組的3種方法-創(chuàng)新互聯(lián)

java對象轉(zhuǎn)成byte數(shù)組,在使用netty進行通信協(xié)議傳輸?shù)膱鼍爸惺欠浅3R姷摹1热?,協(xié)議有一些定好的協(xié)議頭、classid,messageid等等信息,還有一個關(guān)鍵的內(nèi)容是payload。不同的協(xié)議內(nèi)容都會放到payload中,而這個payload往往就是一個byte數(shù)組。

在紫金等地區(qū),都構(gòu)建了全面的區(qū)域性戰(zhàn)略布局,加強發(fā)展的系統(tǒng)性、市場前瞻性、產(chǎn)品創(chuàng)新能力,以專注、極致的服務(wù)理念,為客戶提供成都網(wǎng)站建設(shè)、網(wǎng)站建設(shè) 網(wǎng)站設(shè)計制作按需制作,公司網(wǎng)站建設(shè),企業(yè)網(wǎng)站建設(shè),品牌網(wǎng)站建設(shè),營銷型網(wǎng)站,成都外貿(mào)網(wǎng)站制作,紫金網(wǎng)站建設(shè)費用合理。

那么,如何方便的將一個java對象構(gòu)造成一個byte數(shù)組呢?

1 bytebuf填充

我們以下面這個對象舉例:

public class UgvData implements Serializible{
 private static final long serialVersionUID = -219988432063763456L;

 //狀態(tài)碼
 byte status;
 //當(dāng)前GPS經(jīng)度
 float longitude;
 //當(dāng)前GPS緯度
 float latitude;
 //行駛速度 單位是 m/s,帶一個小數(shù)點
 float speed;
 //當(dāng)前電量百分比
 short batteryPercentage;
 //任務(wù)編號
 long quest;

 public byte[] toByteArray() {
  ByteBuf buf = Unpooled.buffer(32);
  buf.writeByte(this.getStatus());
  buf.writeFloat(getLongitude());
  buf.writeFloat(getLatitude());
  buf.writeFloat(getSpeed());
  buf.writeShort(getBatteryPercentage());
  buf.writeLong(getQuest());
  return buf.array();
 }

 //省略get set
}

網(wǎng)站標(biāo)題:java對象轉(zhuǎn)成byte數(shù)組的3種方法-創(chuàng)新互聯(lián)
URL標(biāo)題:http://www.muchs.cn/article44/dhogee.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供ChatGPT、網(wǎng)頁設(shè)計公司網(wǎng)站內(nèi)鏈、移動網(wǎng)站建設(shè)、面包屑導(dǎo)航、域名注冊

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都網(wǎng)站建設(shè)公司