2016-11-04 23 views
1

序列化是我們通過網絡發送轉換對象爲字節碼的技術。現在,很多類的Java框架(Spring,hibernate(SessionFactory)等)都擴展了可串行化的接口?爲什麼?爲什麼大多數Java框架類都擴展了可串行化接口?

爲什麼在網上搜索我發現這段文字「序列化類可以支持一致的版本控制,並且足夠靈活以允許您的應用程序對象模式的逐步演變」。

這是上述問題的正確答案嗎?如果是善意解釋,如果沒有,那麼什麼是延伸serialable接口

+0

也許是因爲thos必須很快或者晚些時候被序列化:???? –

+0

????他們實現Serializable的原因是它們可以被序列化。將類實例序列化以保存到磁盤,通過網絡發送等。 –

回答

0

我想你可以認爲這是預防的平均班的實際原因:讓您的班從一開始就被序列化並不會花你太多。

加入後來到您的代碼有可能會更昂貴的方式。

除此之外:讓你的類可序列化實際上迫使你在創建你的類時考慮/考慮這些「方面」。因此,可以幫助提高您的設計質量 - 因爲你不要忘記這方面。

0

一個可能的原因是Web容器可能會將會話數據存儲在磁盤上,如果需要(例如高服務器負載和會話在一段時間內不活動)。爲此,所有存儲在會話中的數據(可傳遞地,即直接或間接由會話數據引用的所有實例)必須是可序列化的。

除了會話中存儲的任何數據之外,許多框架還會在會話中存儲一些數據(會話範圍的bean,作爲Spring相關示例)。