亚洲狠狠干,亚洲国产福利精品一区二区,国产八区,激情文学亚洲色图

序列化的方法及裝置的制造方法

文檔序號:10687118閱讀:179來源:國知局
序列化的方法及裝置的制造方法
【專利摘要】本發(fā)明提供一種序列化的方法及裝置。一種序列化的方法包括:根據(jù)待序列化的第一數(shù)據(jù)對象,確定第二數(shù)據(jù)對象,所述第二數(shù)據(jù)對象中的字段為從所述第一數(shù)據(jù)對象的所有字段中篩選出的需要進行序列化的字段;對所述第二數(shù)據(jù)對象進行序列化,獲得所述第二數(shù)據(jù)對象的序列化結(jié)果,并將所述第二數(shù)據(jù)對象的序列化結(jié)果作為所述第一數(shù)據(jù)對象的序列化結(jié)果。本發(fā)明能夠提高序列化的速度。
【專利說明】
序列化的方法及裝置
技術(shù)領(lǐng)域
[0001 ]本發(fā)明涉及計算機領(lǐng)域,尤其涉及一種序列化的方法及裝置。
【背景技術(shù)】
[0002] 序列化是指將數(shù)據(jù)對象狀態(tài)轉(zhuǎn)換為可保持或傳輸?shù)母袷降倪^程。序列化能夠?qū)?shù) 據(jù)對象的狀態(tài)信息寫入到一個字節(jié)流中,使其可以進行傳輸或持久化存儲到數(shù)據(jù)庫或文件 系統(tǒng)中。
[0003] 現(xiàn)有技術(shù)中,一種序列化的方法主要包括:對數(shù)據(jù)對象中的所有字段按順序進行 序列化。例如,數(shù)據(jù)對象A中一共有10個字段,則在對數(shù)據(jù)對象A進行序列化時依次對這10個 字段進行序列化。
[0004] 但是,現(xiàn)有技術(shù)中,在對數(shù)據(jù)對象進行序列化時,存在序列化速度較慢的問題。

【發(fā)明內(nèi)容】

[0005] 本發(fā)明提供一種序列化的方法及裝置,用以解決現(xiàn)有技術(shù)中在對數(shù)據(jù)對象進行序 列化時,存在序列化速度較慢的問題。
[0006] 第一方面,本發(fā)明提供一種序列化的方法,包括:
[0007] 根據(jù)待序列化的第一數(shù)據(jù)對象,確定第二數(shù)據(jù)對象,所述第二數(shù)據(jù)對象中的字段 為從所述第一數(shù)據(jù)對象的所有字段中篩選出的需要進行序列化的字段;
[0008] 對所述第二數(shù)據(jù)對象進行序列化,獲得所述第二數(shù)據(jù)對象的序列化結(jié)果,并將所 述第二數(shù)據(jù)對象的序列化結(jié)果作為所述第一數(shù)據(jù)對象的序列化結(jié)果。
[0009]通過第一方面提供的序列化的方法,從第一數(shù)據(jù)對象的所有字段中篩選出的需要 進行序列化的字段進行序列化,并將序列化結(jié)果作為該第一數(shù)據(jù)對象的序列化結(jié)果,實現(xiàn) 了僅對第一數(shù)據(jù)對象中需要進行序列化的字段進行序列化,而不對不需要進行序列化的字 段進行序列化的序列化方法,與對第一數(shù)據(jù)對象中的所有字段進行序列化,以獲得第一數(shù) 據(jù)對象的序列化結(jié)果相比,減少了獲得第一數(shù)據(jù)對象的序列化結(jié)果時所序列化的字段,從 而提高了對數(shù)據(jù)對象進行序列化時的速度。
[0010]在一個可能的設(shè)計中,所述根據(jù)待序列化的第一數(shù)據(jù)對象,確定第二數(shù)據(jù)對象,包 括:從所述第一數(shù)據(jù)對象中篩選出需要進行序列化的字段,并將所述第一數(shù)據(jù)對象中所有 需要進行序列化的字段作為所述第二數(shù)據(jù)對象的字段。
[0011]在一個可能的設(shè)計中,所述從所述第一數(shù)據(jù)對象中篩選出需要進行序列化的字 段,并將所述第一數(shù)據(jù)對象中所有需要進行序列化的字段作為所述第二數(shù)據(jù)對象的字段, 包括:
[0012] 確定所述第一數(shù)據(jù)對象中字段的值為默認(rèn)值的第一字段,并將所述第一數(shù)據(jù)對象 中除所述第一字段之外的其他字段作為所述第二數(shù)據(jù)對象的字段。
[0013] 通過該實現(xiàn)方式提供的序列化的方法,確定第一數(shù)據(jù)對象中字段的值為默認(rèn)值的 第一字段,將該第一數(shù)據(jù)對象中除該第一字段之外的其他字段作為第二數(shù)據(jù)對象的字段, 并將對該第二數(shù)據(jù)對象進行序列化的結(jié)果作為該第一數(shù)據(jù)對象的序列化結(jié)果,減少了獲得 第一數(shù)據(jù)對象的序列化結(jié)果時所序列化的字段,從而提高了對數(shù)據(jù)對象進行序列化時的速 度。同時,也縮小序列化后二進制字節(jié)流的規(guī)模。
[0014] 在一個可能的設(shè)計中,所述根據(jù)待序列化的第一數(shù)據(jù)對象,確定第二數(shù)據(jù)對象,包 括:在所述第一數(shù)據(jù)對象中刪除不需要進行序列化的字段,并將更新后的所述第一數(shù)據(jù)對 象作為所述第二數(shù)據(jù)對象。
[0015] 在一個可能的設(shè)計中,所述在所述第一數(shù)據(jù)對象中刪除不需要進行序列化的字 段,并將更新后的所述第一數(shù)據(jù)對象作為所述第二數(shù)據(jù)對象,包括:
[0016] 在所述第一數(shù)據(jù)對象中刪除字段的值為默認(rèn)值的第一字段,并將更新后的所述第 一數(shù)據(jù)對象作為所述第二數(shù)據(jù)對象。
[0017] 通過該實現(xiàn)方式提供的序列化的方法,在第一數(shù)據(jù)對象中刪除字段的值為默認(rèn)值 的第一字段,并將更新后的該第一數(shù)據(jù)對象作為所述第二數(shù)據(jù)對象,并將對該第二數(shù)據(jù)對 象進行序列化的結(jié)果作為該第一數(shù)據(jù)對象的序列化結(jié)果,減少了獲得第一數(shù)據(jù)對象的序列 化結(jié)果時所序列化的字段,從而提高了對數(shù)據(jù)對象進行序列化時的速度。同時,也縮小序列 化后二進制字節(jié)流的規(guī)模。
[0018] 第二方面,本發(fā)明提供一種序列化的裝置,包括:
[0019] 確定模塊,用于根據(jù)待序列化的第一數(shù)據(jù)對象,確定第二數(shù)據(jù)對象,所述第二數(shù)據(jù) 對象中的字段為從所述第一數(shù)據(jù)對象的所有字段中篩選出的需要進行序列化的字段;
[0020] 序列化模塊,用于對所述第二數(shù)據(jù)對象進行序列化,獲得所述第二數(shù)據(jù)對象的序 列化結(jié)果,并將所述第二數(shù)據(jù)對象的序列化結(jié)果作為所述第一數(shù)據(jù)對象的序列化結(jié)果。
[0021] 在一個可能的設(shè)計中,所述確定模塊,具體用于:
[0022] 從所述第一數(shù)據(jù)對象中篩選出需要進行序列化的字段,并將所述第一數(shù)據(jù)對象中 所有需要進行序列化的字段作為所述第二數(shù)據(jù)對象的字段。
[0023]在一個可能的設(shè)計中,所述確定模塊,從所述第一數(shù)據(jù)對象中篩選出需要進行序 列化的字段,并將所述第一數(shù)據(jù)對象中所有需要進行序列化的字段作為所述第二數(shù)據(jù)對象 的字段,具體包括:
[0024]確定所述第一數(shù)據(jù)對象中字段的值為默認(rèn)值的第一字段,并將所述第一數(shù)據(jù)對象 中除所述第一字段之外的其他字段作為所述第二數(shù)據(jù)對象的字段。
[0025] 在一個可能的設(shè)計中,所述確定模塊,具體用于:在所述第一數(shù)據(jù)對象中刪除不需 要進行序列化的字段,并將更新后的所述第一數(shù)據(jù)對象作為所述第二數(shù)據(jù)對象。
[0026] 在一個可能的設(shè)計中,所述確定模塊,在所述第一數(shù)據(jù)對象中刪除不需要進行序 列化的字段,并將更新后的所述第一數(shù)據(jù)對象作為所述第二數(shù)據(jù)對象,具體包括:
[0027] 在所述第一數(shù)據(jù)對象中刪除字段的值為默認(rèn)值的第一字段,并將更新后的所述第 一數(shù)據(jù)對象作為所述第二數(shù)據(jù)對象。
[0028] 上述第二方面以及上述第二方面的各可能的實施方式所提供的序列化的裝置,其 有益效果可以參見上述第一方面和第一方面的各可能的實施方式所帶來的有益效果,在此 不再贅述。
【附圖說明】
[0029] 為了更清楚地說明本發(fā)明實施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對實施例或現(xiàn) 有技術(shù)描述中所需要使用的附圖作一簡單地介紹,顯而易見地,下面描述中的附圖是本發(fā) 明的一些實施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動性的前提下,還可以 根據(jù)這些附圖獲得其他的附圖。
[0030] 圖1為本發(fā)明序列化的方法實施例一的流程圖;
[0031 ]圖2為本發(fā)明序列化的方法實施例二的流程圖;
[0032]圖3為本發(fā)明序列化的裝置實施例一的結(jié)構(gòu)示意圖;
[0033]圖4為本發(fā)明序列化的裝置實施例三的結(jié)構(gòu)示意圖。
【具體實施方式】
[0034]為使本發(fā)明實施例的目的、技術(shù)方案和優(yōu)點更加清楚,下面將結(jié)合本發(fā)明實施例 中的附圖,對本發(fā)明實施例中的技術(shù)方案進行清楚、完整地描述,顯然,所描述的實施例是 本發(fā)明一部分實施例,而不是全部的實施例?;诒景l(fā)明中的實施例,本領(lǐng)域普通技術(shù)人員 在沒有作出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都屬于本發(fā)明保護的范圍。
[0035]圖1為本發(fā)明序列化的方法實施例一的流程圖;本實施例的方法可以由任何需要 進行序列化處理的設(shè)備來執(zhí)行。如圖1所示,本實施例的方法可以包括:
[0036]步驟101、根據(jù)待序列化的第一數(shù)據(jù)對象,確定第二數(shù)據(jù)對象,所述第二數(shù)據(jù)對象 中的字段為從所述第一數(shù)據(jù)對象的所有字段中篩選出的需要進行序列化的字段。
[0037]本步驟中,該第一數(shù)據(jù)對象的字段中可以包括需要進行序列化的字段和不需要進 行序列化的字段。上述需要進行序列化的字段可以被理解為不進行序列化時會導(dǎo)致反序列 化時反序列化結(jié)果不準(zhǔn)確的字段。上述不需要進行序列化的字段可以被理解為不進行序列 化并不會導(dǎo)致反序列化時反序列化結(jié)果不準(zhǔn)確的字段。由于第二數(shù)據(jù)對象中僅包括第一數(shù) 據(jù)對象中需要進行序列化的字段而不包括第一數(shù)據(jù)對象中不需要進行序列化的字段,因此 第二數(shù)據(jù)對象中的字段少于第一數(shù)據(jù)對象中的字段。
[0038]步驟102、對所述第二數(shù)據(jù)對象進行序列化,獲得所述第二數(shù)據(jù)對象的序列化結(jié) 果,并將所述第二數(shù)據(jù)對象的序列化結(jié)果作為所述第一數(shù)據(jù)對象的序列化結(jié)果。
[0039]本步驟中,將對該第二數(shù)據(jù)對象進行序列化后獲得的結(jié)果作為該第一數(shù)據(jù)對象的 序列化結(jié)果??梢钥闯觯谕ㄟ^對第二數(shù)據(jù)對象進行序列化來獲得第一數(shù)據(jù)對象的序列化 結(jié)果時,實際進行序列化的字段少于第一數(shù)據(jù)對象的字段。
[0040]本實施例中,通過對從第一數(shù)據(jù)對象的所有字段中篩選出的需要進行序列化的字 段進行序列化,并將序列化結(jié)果作為該第一數(shù)據(jù)對象的序列化結(jié)果,實現(xiàn)了僅對第一數(shù)據(jù) 對象中需要進行序列化的字段進行序列化,而不對不需要進行序列化的字段進行序列化的 序列化方法,與對第一數(shù)據(jù)對象中的所有字段進行序列化,以獲得第一數(shù)據(jù)對象的序列化 結(jié)果相比,減少了獲得第一數(shù)據(jù)對象的序列化結(jié)果時所序列化的字段,從而提高了對數(shù)據(jù) 對象進行序列化時的速度。
[0041 ]圖2為本發(fā)明序列化的方法實施例二的流程圖;本實施例的方法在圖1所示方法的 基礎(chǔ)上,主要描述了根據(jù)待序列化的第一數(shù)據(jù)對象,確定第二數(shù)據(jù)對象的具體實現(xiàn)方式。如 圖2所示,本實施例的方法可以包括:
[0042]步驟201、從待序列化的第一數(shù)據(jù)對象中篩選出需要進行序列化的字段,并將所述 第一數(shù)據(jù)對象中所有需要進行序列化的字段作為第二數(shù)據(jù)對象的字段。
[0043] 本步驟中,可選的,步驟201具體可以包括:確定所述第一數(shù)據(jù)對象中字段的值為 默認(rèn)值的第一字段,并將所述第一數(shù)據(jù)對象中除所述第一字段之外的其他字段作為所述第 二數(shù)據(jù)對象的字段??蛇x的,步驟201可以替換為:在第一數(shù)據(jù)對象中刪除不需要進行序列 化的字段,并將更新后的所述第一數(shù)據(jù)對象作為第二數(shù)據(jù)對象。具體可以為:在所述第一數(shù) 據(jù)對象中刪除字段的值為默認(rèn)值的第一字段,并將更新后的所述第一數(shù)據(jù)對象作為所述第 二數(shù)據(jù)對象。需要說明的是,在將第一數(shù)據(jù)對象進行序列化后,會得到二進制字節(jié)流;之后 再進行反序列化時,首先創(chuàng)建一個與第一數(shù)據(jù)對象結(jié)構(gòu)相同的數(shù)據(jù)對象,并將該數(shù)據(jù)對象 中的字段都賦予默認(rèn)值,再對該二進制字節(jié)流進行反序列化,并根據(jù)反序列化后獲得的結(jié) 果將該默認(rèn)值進行替換,從而得到與第一數(shù)據(jù)對象完全相同的數(shù)據(jù)對象??梢钥闯觯瑢τ谠?序列化時其值為默認(rèn)值的第一字段,不進行序列化時并不會影響反序列化的準(zhǔn)確性,因此 第一字段為不需要進行序列化的字段。并且,由于完成一個項目往往需要大量自定義類 (class)對象,且大部分自定義類對象中的字段的值都會是一些默認(rèn)值,因此通過本實施例 的方式對于包括該些自定義類對象的對象數(shù)據(jù)進行序列化,可以極大的提高序列化的速 度。其中,當(dāng)字段的類型為整型(int),浮點型(double)、十進制小數(shù)型(decimal)等時,對應(yīng) 的默認(rèn)值例如可以為〇;當(dāng)字段的類型為字符串(string)時,對應(yīng)的默認(rèn)值例如可以為空 (null或'°')等等。
[0044] 以微軟系統(tǒng)為例,現(xiàn)有技術(shù)中開發(fā)人員在定義一個類時可以通過加上狀態(tài) "[Serializable] "來標(biāo)記該類為可序列化,并通過BinaryFormatter類(其中, BinaryFormatter類用于以二進制格式將數(shù)據(jù)對象序列化和反序列化)的Serialize函數(shù)實 現(xiàn)的默認(rèn)序列化方式進行序列化。在采用Serialize函數(shù)實現(xiàn)的默認(rèn)序列化方式進行序列 化時,對數(shù)據(jù)對象的所有字段依次進行序列化。本實施例中,對于需要實現(xiàn)自定義序列化的 第一類,可以通過在該第一類繼承Iserializable類,并在該第一類中實現(xiàn)void GetObjectData(Serializationlnfo info,StreamingContext context)方法的方式來篩 選出不需要序列化的字段。需要說明的是,上述第一類可以為數(shù)據(jù)對象中占用最多數(shù)據(jù)的 類。以在DemoMode 1類實現(xiàn)GetOb j ectData方法為例,具體實現(xiàn)可以參考如下代碼:

[0047] 步驟202、對所述第二數(shù)據(jù)對象進行序列化,獲得所述第二數(shù)據(jù)對象的序列化結(jié) 果,并將所述第二數(shù)據(jù)對象的序列化結(jié)果作為所述第一數(shù)據(jù)對象的序列化結(jié)果。
[0048] 本步驟中,可以通過調(diào)用Serialize函數(shù)完成序列化。具體的,第一步、倉ij建 BinaryFormat ter 對象 format ter 〇第二步、申請內(nèi)存流MemoryStream mem = new MemoryStream()。第三步、調(diào)用formatter ? Serialize (mem, obj)函數(shù)進行序列化,其中,obj 即為待序列化的數(shù)據(jù)對象,Obj中包括了由類似上述DemoModel類生成的對象。第四步、獲得 二進制字節(jié)流mem.ToArray()。需要說明的是,在第三步調(diào)用Serialize函數(shù)完成序列化時 主要分為兩步:第一步調(diào)用GetObjectData函數(shù)將待序列的字段添加到Serial izationlnfo 對象中,第二步對添加到Serializationlnfo對象中的字段進行序列化。由于步驟201中通 過重寫GetObjectData函數(shù)實現(xiàn)了僅將需要序列化的字段添加到Serial izationlnfo對象 中(原G e t 0 b j e c t D a t a函數(shù)是將待序列化的數(shù)據(jù)對象的所有字段都添加到 Serializationlnfo對象中),從而減小了待序列化的字段的數(shù)量,提高了序列化的速度。
[0049] 本實施例中,通過從第一數(shù)據(jù)對象中篩選出需要進行序列化的字段,將該第一數(shù) 據(jù)對象中所有需要進行序列化的字段作為第二數(shù)據(jù)對象的字段,并將對該第二數(shù)據(jù)對象進 行序列化的結(jié)果作為該第一數(shù)據(jù)對象的序列化結(jié)果,減少了獲得第一數(shù)據(jù)對象的序列化結(jié) 果時所序列化的字段,從而提高了對數(shù)據(jù)對象進行序列化時的速度。同時,也縮小序列化后 二進制字節(jié)流的規(guī)模。
[0050] 圖3為本發(fā)明序列化的裝置實施例一的結(jié)構(gòu)示意圖。該序列化的裝置可以通過軟 件、硬件或者兩者的結(jié)合實現(xiàn)成為任何需要進行序列化處理的設(shè)備的部分或者全部。參照 圖3,該裝置包括確定模塊301和序列化模塊302。其中,確定模塊301,用于根據(jù)待序列化的 第一數(shù)據(jù)對象,確定第二數(shù)據(jù)對象,所述第二數(shù)據(jù)對象中的字段為從所述第一數(shù)據(jù)對象的 所有字段中篩選出的需要進行序列化的字段;序列化模塊302,用于對所述第二數(shù)據(jù)對象進 行序列化,獲得所述第二數(shù)據(jù)對象的序列化結(jié)果,并將所述第二數(shù)據(jù)對象的序列化結(jié)果作 為所述第一數(shù)據(jù)對象的序列化。
[0051] 本實施例的裝置,可以用于執(zhí)行圖1所示方法實施例的技術(shù)方案,其實現(xiàn)原理和技 術(shù)效果類似,此處不再贅述。
[0052]序列化的裝置實施例二
[0053]可選的,在本發(fā)明序列化的裝置實施例一的基礎(chǔ)上,確定模塊301,具體用于:從所 述第一數(shù)據(jù)對象中篩選出需要進行序列化的字段,并將所述第一數(shù)據(jù)對象中所有需要進行 序列化的字段作為所述第二數(shù)據(jù)對象的字段;或者,在所述第一數(shù)據(jù)對象中刪除不需要進 行序列化的字段,并將更新后的所述第一數(shù)據(jù)對象作為所述第二數(shù)據(jù)對象。
[0054] 進一步可選的,確定模塊301,從所述第一數(shù)據(jù)對象中篩選出需要進行序列化的字 段,并將所述第一數(shù)據(jù)對象中所有需要進行序列化的字段作為所述第二數(shù)據(jù)對象的字段, 具體包括:確定所述第一數(shù)據(jù)對象中字段的值為默認(rèn)值的第一字段,并將所述第一數(shù)據(jù)對 象中除所述第一字段之外的其他字段作為所述第二數(shù)據(jù)對象的字段。
[0055] 進一步可選的,確定模塊301,在所述第一數(shù)據(jù)對象中刪除不需要進行序列化的字 段,并將更新后的所述第一數(shù)據(jù)對象作為所述第二數(shù)據(jù)對象,具體包括:在所述第一數(shù)據(jù)對 象中刪除字段的值為默認(rèn)值的第一字段,并將更新后的所述第一數(shù)據(jù)對象作為所述第二數(shù) 據(jù)對象。
[0056] 本實施例的裝置,可以用于執(zhí)行圖2所示方法實施例的技術(shù)方案,其實現(xiàn)原理和技 術(shù)效果類似,此處不再贅述。
[0057] 圖4為本發(fā)明序列化的裝置實施例三的結(jié)構(gòu)示意圖,本實施例的裝置為任何需要 進行序列化處理的設(shè)備;如圖4所示,本實施例的裝置可以包括:處理器401和存儲器402。其 中,存儲器402存儲執(zhí)行指令,當(dāng)裝置運行時,處理器401與存儲器402之間通信,處理器401 調(diào)用存儲器402中的執(zhí)行指令,用于執(zhí)行以下操作:
[0058] 根據(jù)待序列化的第一數(shù)據(jù)對象,確定第二數(shù)據(jù)對象,所述第二數(shù)據(jù)對象中的字段 為從所述第一數(shù)據(jù)對象的所有字段中篩選出的需要進行序列化的字段;
[0059] 對所述第二數(shù)據(jù)對象進行序列化,獲得所述第二數(shù)據(jù)對象的序列化結(jié)果,并將所 述第二數(shù)據(jù)對象的序列化結(jié)果作為所述第一數(shù)據(jù)對象的序列化結(jié)果。
[0060] 可選的,所述根據(jù)待序列化的第一數(shù)據(jù)對象,確定第二數(shù)據(jù)對象,包括:
[0061] 從所述第一數(shù)據(jù)對象中篩選出需要進行序列化的字段,并將所述第一數(shù)據(jù)對象中 所有需要進行序列化的字段作為所述第二數(shù)據(jù)對象的字段。
[0062]可選的,所述從所述第一數(shù)據(jù)對象中篩選出需要進行序列化的字段,并將所述第 一數(shù)據(jù)對象中所有需要進行序列化的字段作為所述第二數(shù)據(jù)對象的字段,包括:
[0063]確定所述第一數(shù)據(jù)對象中字段的值為默認(rèn)值的第一字段,并將所述第一數(shù)據(jù)對象 中除所述第一字段之外的其他字段作為所述第二數(shù)據(jù)對象的字段。
[0064] 可選的,所述根據(jù)待序列化的第一數(shù)據(jù)對象,確定第二數(shù)據(jù)對象,包括:
[0065] 在所述第一數(shù)據(jù)對象中刪除不需要進行序列化的字段,并將更新后的所述第一數(shù) 據(jù)對象作為所述第二數(shù)據(jù)對象。
[0066] 可選的,所述在所述第一數(shù)據(jù)對象中刪除不需要進行序列化的字段,并將更新后 的所述第一數(shù)據(jù)對象作為所述第二數(shù)據(jù)對象,包括:
[0067] 在所述第一數(shù)據(jù)對象中刪除字段的值為默認(rèn)值的第一字段,并將更新后的所述第 一數(shù)據(jù)對象作為所述第二數(shù)據(jù)對象。
[0068] 可選的,該裝置還可以包括發(fā)送接口 403和接收接口 404。發(fā)送接口 403和接收接口 404可以和處理器401相連。其中,發(fā)送接口403用于發(fā)送數(shù)據(jù)或信息,接收接口404用于接收 數(shù)據(jù)或信息。
[0069]需要說明的是,上述發(fā)送接口 403和接收接口 404可以為軟件內(nèi)部編寫的通訊代碼 程序,也可以是任意現(xiàn)有的通訊傳輸工具。處理器401可包含一個或多個多核處理器和/或 存儲器402。存儲器402可為非瞬時性的存儲介質(zhì),與處理器401相耦合,用于保存不同類型 的數(shù)據(jù)。存儲器402可包含只讀存儲器(read only memory,R0M),隨機存取存儲器(random access memory,RAM)或者可存儲信息和指令的其他類型的動態(tài)存儲設(shè)備,也可以是磁盤存 儲器。
[0070] 本實施例的裝置,可以用于執(zhí)行圖1或圖2所述方法實施例的技術(shù)方案,其實現(xiàn)原 理和技術(shù)效果類似,此處不再贅述。
[0071] 本領(lǐng)域普通技術(shù)人員可以理解:實現(xiàn)上述各方法實施例的全部或部分步驟可以通 過程序指令相關(guān)的硬件來完成。前述的程序可以存儲于一計算機可讀取存儲介質(zhì)中。該程 序在執(zhí)行時,執(zhí)行包括上述各方法實施例的步驟;而前述的存儲介質(zhì)包括:R〇M、RAM、磁碟或 者光盤等各種可以存儲程序代碼的介質(zhì)。
[0072]最后應(yīng)說明的是:以上各實施例僅用以說明本發(fā)明的技術(shù)方案,而非對其限制;盡 管參照前述各實施例對本發(fā)明進行了詳細的說明,本領(lǐng)域的普通技術(shù)人員應(yīng)當(dāng)理解:其依 然可以對前述各實施例所記載的技術(shù)方案進行修改,或者對其中部分或者全部技術(shù)特征進 行等同替換;而這些修改或者替換,并不使相應(yīng)技術(shù)方案的本質(zhì)脫離本發(fā)明各實施例技術(shù) 方案的范圍。
【主權(quán)項】
1. 一種序列化的方法,其特征在于,包括: 根據(jù)待序列化的第一數(shù)據(jù)對象,確定第二數(shù)據(jù)對象,所述第二數(shù)據(jù)對象中的字段為從 所述第一數(shù)據(jù)對象的所有字段中篩選出的需要進行序列化的字段; 對所述第二數(shù)據(jù)對象進行序列化,獲得所述第二數(shù)據(jù)對象的序列化結(jié)果,并將所述第 二數(shù)據(jù)對象的序列化結(jié)果作為所述第一數(shù)據(jù)對象的序列化結(jié)果。2. 根據(jù)權(quán)利要求1所述的方法,其特征在于,所述根據(jù)待序列化的第一數(shù)據(jù)對象,確定 第二數(shù)據(jù)對象,包括: 從所述第一數(shù)據(jù)對象中篩選出需要進行序列化的字段,并將所述第一數(shù)據(jù)對象中所有 需要進行序列化的字段作為所述第二數(shù)據(jù)對象的字段。3. 根據(jù)權(quán)利要求2所述的方法,其特征在于,所述從所述第一數(shù)據(jù)對象中篩選出需要進 行序列化的字段,并將所述第一數(shù)據(jù)對象中所有需要進行序列化的字段作為所述第二數(shù)據(jù) 對象的字段,包括: 確定所述第一數(shù)據(jù)對象中字段的值為默認(rèn)值的第一字段,并將所述第一數(shù)據(jù)對象中除 所述第一字段之外的其他字段作為所述第二數(shù)據(jù)對象的字段。4. 根據(jù)權(quán)利要求1所述的方法,其特征在于,所述根據(jù)待序列化的第一數(shù)據(jù)對象,確定 第二數(shù)據(jù)對象,包括: 在所述第一數(shù)據(jù)對象中刪除不需要進行序列化的字段,并將更新后的所述第一數(shù)據(jù)對 象作為所述第二數(shù)據(jù)對象。5. 根據(jù)權(quán)利要求4所述的方法,其特征在于,所述在所述第一數(shù)據(jù)對象中刪除不需要進 行序列化的字段,并將更新后的所述第一數(shù)據(jù)對象作為所述第二數(shù)據(jù)對象,包括: 在所述第一數(shù)據(jù)對象中刪除字段的值為默認(rèn)值的第一字段,并將更新后的所述第一數(shù) 據(jù)對象作為所述第二數(shù)據(jù)對象。6. -種序列化的裝置,其特征在于,包括: 確定模塊,用于根據(jù)待序列化的第一數(shù)據(jù)對象,確定第二數(shù)據(jù)對象,所述第二數(shù)據(jù)對象 中的字段為從所述第一數(shù)據(jù)對象的所有字段中篩選出的需要進行序列化的字段; 序列化模塊,用于對所述第二數(shù)據(jù)對象進行序列化,獲得所述第二數(shù)據(jù)對象的序列化 結(jié)果,并將所述第二數(shù)據(jù)對象的序列化結(jié)果作為所述第一數(shù)據(jù)對象的序列化結(jié)果。7. 根據(jù)權(quán)利要求6所述的裝置,其特征在于,所述確定模塊,具體用于: 從所述第一數(shù)據(jù)對象中篩選出需要進行序列化的字段,并將所述第一數(shù)據(jù)對象中所有 需要進行序列化的字段作為所述第二數(shù)據(jù)對象的字段。8. 根據(jù)權(quán)利要求7所述的裝置,其特征在于,所述確定模塊,從所述第一數(shù)據(jù)對象中篩 選出需要進行序列化的字段,并將所述第一數(shù)據(jù)對象中所有需要進行序列化的字段作為所 述第二數(shù)據(jù)對象的字段,具體包括: 確定所述第一數(shù)據(jù)對象中字段的值為默認(rèn)值的第一字段,并將所述第一數(shù)據(jù)對象中除 所述第一字段之外的其他字段作為所述第二數(shù)據(jù)對象的字段。9. 根據(jù)權(quán)利要求6所述的裝置,其特征在于,所述確定模塊,具體用于:在所述第一數(shù)據(jù) 對象中刪除不需要進行序列化的字段,并將更新后的所述第一數(shù)據(jù)對象作為所述第二數(shù)據(jù) 對象。10. 根據(jù)權(quán)利要求9所述的裝置,其特征在于,所述確定模塊,在所述第一數(shù)據(jù)對象中刪 除不需要進行序列化的字段,并將更新后的所述第一數(shù)據(jù)對象作為所述第二數(shù)據(jù)對象,具 體包括: 在所述第一數(shù)據(jù)對象中刪除字段的值為默認(rèn)值的第一字段,并將更新后的所述第一數(shù) 據(jù)對象作為所述第二數(shù)據(jù)對象。
【文檔編號】G06F17/30GK106055620SQ201610361705
【公開日】2016年10月26日
【申請日】2016年5月26日
【發(fā)明人】李寬
【申請人】江蘇國泰新點軟件有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1