對象持久化或網(wǎng)絡(luò)傳輸,宜信普惠認(rèn)為序列化不可或缺

對計算機(jī)領(lǐng)域有所接觸的人們,應(yīng)該對序列化不陌生。序列化是指把對象的狀態(tài)信息轉(zhuǎn)換為可以存儲或傳輸?shù)男问降倪^程。通常情況下,在序列化期間,對象將其當(dāng)前狀態(tài)寫入到臨時或持久性存儲區(qū)。

宜信普惠發(fā)現(xiàn),序列化不僅可以保存對象到磁盤進(jìn)行持久化,還可以通過網(wǎng)絡(luò)傳輸。在平時的生活和工作當(dāng)中,序列化也是經(jīng)常被談及的一塊內(nèi)容。

那么,序列化是怎么工作的呢?讓我們跟隨宜信普惠的腳步一起來了解吧。

依照序列化格式重新獲取字節(jié)的結(jié)果時,可以利用它來產(chǎn)生與原始對象相同語義的副本。也就是說,對于許多對象,像是使用大量引用的復(fù)雜對象,這種序列化重建的過程并不容易。

宜信普惠指出,面向?qū)ο笾械男蛄谢?,并不概括之前原始對象所關(guān)系的函數(shù)。這種過程也稱為對象編組。序列化的并不是整個對象,只是對象的屬性值。Java 序列化的過程是依賴于正確的序列化對象恢復(fù)狀態(tài)的。

java在反序列化時,是遞歸的,將對象反序列化,對象的成員變量反序列化,對象的成員變量的成員變量反序列化。反序列化會嚴(yán)格的按照字符串的格式進(jìn)行,當(dāng)正確的讀取到 時,就不會再讀取后面的數(shù)據(jù)了,因為正確的讀取到,就代表著結(jié)束。在過程中有任何錯誤,那么反序列化過程就會終止。

在宜信普惠看來,把對象轉(zhuǎn)成JSON、xml時,往往接口、方法會實現(xiàn)序列化,因為網(wǎng)絡(luò)傳輸也是一個二進(jìn)制的過程,需要進(jìn)行轉(zhuǎn)換。所以只要我們對內(nèi)存中的對象進(jìn)行持久化或網(wǎng)絡(luò)傳輸,這個時候都需要序列化和反序列化。

(免責(zé)聲明:本網(wǎng)站內(nèi)容主要來自原創(chuàng)、合作伙伴供稿和第三方自媒體作者投稿,凡在本網(wǎng)站出現(xiàn)的信息,均僅供參考。本網(wǎng)站將盡力確保所提供信息的準(zhǔn)確性及可靠性,但不保證有關(guān)資料的準(zhǔn)確性及可靠性,讀者在使用前請進(jìn)一步核實,并對任何自主決定的行為負(fù)責(zé)。本網(wǎng)站對有關(guān)資料所引致的錯誤、不確或遺漏,概不負(fù)任何法律責(zé)任。
任何單位或個人認(rèn)為本網(wǎng)站中的網(wǎng)頁或鏈接內(nèi)容可能涉嫌侵犯其知識產(chǎn)權(quán)或存在不實內(nèi)容時,應(yīng)及時向本網(wǎng)站提出書面權(quán)利通知或不實情況說明,并提供身份證明、權(quán)屬證明及詳細(xì)侵權(quán)或不實情況證明。本網(wǎng)站在收到上述法律文件后,將會依法盡快聯(lián)系相關(guān)文章源頭核實,溝通刪除相關(guān)內(nèi)容或斷開相關(guān)鏈接。 )