序列化和反序列化

ObjectInputStream ?ObjectOutStream將對(duì)象序列化到磁盤

把對(duì)象轉(zhuǎn)換為字節(jié)序列的過(guò)程稱為對(duì)象的序列化

把字節(jié)序列恢復(fù)為對(duì)象的過(guò)程稱為對(duì)象的反序列化

對(duì)象序列化主要有兩種用途:

(1)把對(duì)象的字節(jié)序列永久地保存到硬盤上,通常存放在一個(gè)文件中

(2)在網(wǎng)絡(luò)上傳送對(duì)象的字節(jié)序列

在很多應(yīng)用中,需要對(duì)某些對(duì)象進(jìn)行序列化,讓它們離開(kāi)內(nèi)存空間入駐物理硬盤,以便長(zhǎng)期保存。比如最常見(jiàn)的是Web服務(wù)器中的Session對(duì)象,當(dāng)有10萬(wàn)用戶并發(fā)訪問(wèn),就有可能出現(xiàn)10萬(wàn)個(gè)Session對(duì)象,內(nèi)存可能吃不消,于是Web容器就會(huì)把一些session先序列化到硬盤中,等要用到的時(shí)候,再把保存在硬盤中的對(duì)象還原到內(nèi)存中

? ?當(dāng)兩個(gè)進(jìn)程在進(jìn)行遠(yuǎn)程通信時(shí),彼此可以發(fā)送各種類型的數(shù)據(jù),無(wú)論是何種類型的數(shù)據(jù),都會(huì)以二進(jìn)制序列的形式在網(wǎng)絡(luò)上傳送。發(fā)送方需要把這個(gè)java對(duì)象轉(zhuǎn)換為字節(jié)序列,才能在網(wǎng)絡(luò)上傳送。接收方則需要把字節(jié)序列化再恢復(fù)為java對(duì)象。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

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

  • JAVA序列化機(jī)制的深入研究 對(duì)象序列化的最主要的用處就是在傳遞,和保存對(duì)象(object)的時(shí)候,保證對(duì)象的完整...
    時(shí)待吾閱讀 11,192評(píng)論 0 24
  • 1. Java序列化和反序列化(What) Java序列化(Serialize)是指將一個(gè)Java對(duì)象寫入IO流中...
    悠揚(yáng)前奏閱讀 976評(píng)論 2 1
  • 1 序列化的原因 java序列化主要是為了跨平臺(tái),實(shí)現(xiàn)對(duì)象的一致性,可在不同的平臺(tái)上,保持自己原有的屬性和方法不變...
    唐一川閱讀 638評(píng)論 0 2
  • - 把對(duì)象轉(zhuǎn)換為字節(jié)序列的過(guò)程稱為對(duì)象的序列化。- 把字節(jié)序列恢復(fù)為對(duì)象的過(guò)程稱為對(duì)象的反序列化。對(duì)象的序列化主要...
    maoyaocsf閱讀 304評(píng)論 0 0
  • 一路走來(lái) 才發(fā)現(xiàn)唯有記憶是永恒的 時(shí)光的腳步輕輕地向前邁過(guò) 留在記憶里的 幾次相忘于世 又在某一個(gè)拐角處 驀然回首...
    如晴天似雨天不似曾經(jīng)閱讀 275評(píng)論 2 2

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