關於序列化的使用

2022-04-03 23:30:42 字數 819 閱讀 4884

1、為什麼使用序列化serializable

實現了serializable介面的物件,可將它們轉換成一系列位元組,並可在以後完全恢復回原來的樣子。這一過程亦可通過網路進行。這意味著序列化機制能自動補償作業系統間的差異。換句話說,可以先在windows機器上建立乙個物件,對其序列化,然後通過網路發給一台unix機器,然後在那裡準確無誤地重新「裝配」。不必關心資料在不同機器上如何表示,也不必關心位元組的順序或者其他任何細節。

serialization主要用來支援2種主要的特性:

1、rmi(remote method invocation)。rmi允許象在本機上一樣操作遠端機器上的物件。當傳送訊息給遠端物件和呼叫遠端方法時,就需要用到serializaiton機制來傳送引數和接收返回值。 

2、儲存資訊。在某個時候把狀態資訊儲存起來,以便以後某個時候能恢復這些狀態資訊。

hibernaet和ejb中的實體bean就用到了上面兩個特性。

另外:儲存的時候不僅能儲存物件的副本,而且還會把物件裡面所引用的物件也儲存起來,以此類推。就像在編譯某個類一樣,會涉及到所用到的所有類。但是所引用的物件也必須是可序列化的,不然會拋notserializableexception異常。

2、什麼情況下需要序列化

a)當你想把的記憶體中的物件狀態儲存到乙個檔案中或者資料庫中時候;

b)當你想用套接字在網路上傳送物件的時候;

c)當你想通過rmi傳輸物件的時候;

謝謝!尺有所短,寸有所長博主 ,xiebh作者

序列化使用

序列化使用 我們在django shell中來學習序列化器的使用。在pycharm tool windows terminal 命令 python manage.py shell class bookinfo models.model 圖書模型 btitle models.charfield max...

序列化(序列化)

原書上翻譯為序列化,msdn翻譯為序列化 作用 當需要儲存,或者網路傳輸 remoting時,資料 物件或值 需要序列化 類似於打包傳輸檔案。system.serializableattribute 序列化是指儲存和獲取磁碟檔案 記憶體或其他地方中的物件。在序列化時,所有的例項資料都儲存到儲存介質上...

關於物件的序列化

的過程.net framework通過reflection提供自動serialization的機制。當乙個物件被序列化 serialized 的時候,它的類名,assembly,以及類例項的所有資料成員都將被寫入儲存介質中。serialization引擎保持對所有已經被序列化的物件引用的追蹤,以確保...