當前位置:編程學習大全網 - 編程語言 - 序列化的方式有哪些

序列化的方式有哪些

序列化

序列化 (Serialization)是將對象的狀態信息轉換為可以存儲或傳輸的形式的過程。在序列化期間,對象將其當前狀態寫入到臨時或持久性存儲區。以後,可以通過從存儲區中讀取或反序列化對象的狀態,重新創建該對象。

序列化使其他代碼可以查看或修改,那些不序列化便無法訪問的對象實例數據。確切地說,代碼執行序列化需要特殊的權限:即指定了 SerializationFormatter 標誌的 SecurityPermission。在默認策略下,通過 Internet 下載的代碼或 Internet 代碼不會授予該權限;只有本地計算機上的代碼才被授予該權限。

通常,對象實例的所有字段都會被序列化,這意味著數據會被表示為實例的序列化數據。這樣,能夠解釋該格式的代碼有可能能夠確定這些數據的值,而不依賴於該成員的可訪問性。類似地,反序列化從序列化的表示形式中提取數據,並直接設置對象狀態,這也與可訪問性規則無關。

對於任何可能包含重要的安全性數據的對象,如果可能,應該使該對象不可序列化。如果它必須為可序列化的,請嘗試生成特定字段來保存不可序列化的重要數據。如果無法實現這壹點,則應註意該數據會被公開給任何擁有序列化權限的代碼,並確保不讓任何惡意代碼獲得該權限。

中文名

序列化

外文名

Serialization

類型

概念

類別

通信

快速

導航

技術

Java編程中的序列化

PHP

目的

1、以某種存儲形式使自定義對象持久化;

2、將對象從壹個地方傳遞到另壹個地方。

3、使程序更具維護性。

技術

* 二進制序列化保持類型保真度,這對於在應用程序的不同調用之間保留對象的狀態很有用。例如,通過將對象序列化到剪貼板,可在不同的應用程序之間***享對象。您可以將對象序列化到流、磁盤、內存和網絡等等。遠程處理使用序列化“通過值”在計算機或應用程序域之間傳遞對象。

* XML 序列化僅序列化公***屬性和字段,且不保持類型保真度。當您要提供或使用數據而不限制使用該數據的應用程序時,這壹點是很有用的。由於 XML 是壹個開放式標準,因此,對於通過 Web ***享數據而言,這是壹個很好的選擇。SOAP 同樣是壹個開放式標準,這使它也成為壹個頗具吸引力的選擇。

Java編程中的序列化

序列化的實現方法

把壹個Java對象寫入到硬盤或者傳輸到網路上面的其它計算機,這時我們就需要自己去通過java把相應的對象寫成轉換成字節流。對於這種通用的操作,我們為什麽不使用統壹的格式呢?沒錯,這裏就出現了java的序列化的概念。在Java的OutputStream類下面的子類ObjectOutputStream類就有對應的WriteObject(Object object) 其中要求對應的object實現了java的序列化的接口。

在使用tomcat開發JavaEE相關項目的時候,我們關閉tomcat後,相應的session中的對象就存儲在了硬盤上,如果我們想要在tomcat重啟的時能夠從tomcat上面讀取對應session中的內容,那麽保存在session中的內容就必須實現相關的序列化操作,還有jdbc加載驅動用的就是反序列化,將字符串變為對象。

  • 上一篇:壹個完整的程序框圖至少包含什麽
  • 下一篇:楚雄工商註冊:個體戶註冊營業執照需要什麽資料
  • copyright 2024編程學習大全網