我們的對象並不只是存在記憶體中,還需要傳輸網路,或者保存起來下次再載入出來用,所以需要Java序列化技術。Java序列化技術正是將對象轉變成一串由二進位位元組組成的數組,可以通過將二進位數據保存到磁碟或者傳輸網路,磁碟或者網路接收者可以在對象的屬類的模板上來反序列化類的對象,達到對象持久化的目的。 如果 ...
我們的對象並不只是存在記憶體中,還需要傳輸網路,或者保存起來下次再載入出來用,所以需要Java序列化技術。Java序列化技術正是將對象轉變成一串由二進位位元組組成的數組,可以通過將二進位數據保存到磁碟或者傳輸網路,磁碟或者網路接收者可以在對象的屬類的模板上來反序列化類的對象,達到對象持久化的目的。
如果你還不熟悉 Java 序列化技術,請詳細閱讀《關於Java序列化你應該知道的一切》這篇文章。
目前 Oracle 公司計劃廢除 Java 中的古董--序列化技術,因為它帶來了許多嚴重的安全問題(如序列化存儲安全、反序列化安全、傳輸安全等),據統計,至少有3分之1的漏洞是序列化帶來的,這也是 1997 年誕生序列化技術的一個巨大錯誤。
如圖所示,序列化技術現在在 Java 應用中無處不在,特別是現在的持久化框架和分散式技術中,都需要利用序列化來傳輸對象,如:Hibernate、Mybatis、Java RMI、Dubbo等,即對象要存儲或者傳輸都不可避免要用到序列化技術,所以刪除序列化技術將是一個長期的計劃。
據悉,在未來的 Java 版本中,將會有一個迷你序列化框架來替代現在的古董序列化技術。這個新框架將會支持開發者值入序列化引擎,並支持如 JSON、XML 格式,以一個更安全的方式來序列化對象。
序列化技術自 Java 誕生到現在已經發展了 20 來年了,但並未有什麼改進和突破。也因為其簡單易用的方式,給 Java 應用程式帶來了許多安全漏洞。現在 Oracle 版本發佈越來越快,讓我們在新的版本中能看到更多序列化技術演進吧!
Java 序列化重生,Java 會永垂不朽!這次感謝圖靈教育出版社贊助 8 本價值 84 元的 《明解Java》 免費送給我們的粉絲,想深入學習 Java 的穩住了,我們一定能贏。
本書圖文並茂,示例豐富,通過284幅圖表和258段代碼,由淺入深地解說了從Java的基礎知識到面向對象編程的內容,涉及變數、分支、迴圈、基本數據類型和運算、數組、方法、類、包、介面、字元和字元串、異常處理等。書中出現的程式包括猜數游戲、猜拳游戲、心算訓練等,能夠讓讀者愉快地學習。
本次送書規則如下。
1、如果讓你來設計一個安全的序列化技術,你會怎麼做?歡迎留言!我們將選出 4 名精彩留言用戶送書,留言牆數量有限,與話題無關且隨意留言的不會被精選。
2、還有 4 本從Java技術棧知識星球中抽獎送出,有想深入交流學習 Java 技術的朋友可以加入Java技術棧星球。天下沒有免費的午餐,機會都是留給有準備願意付出的人的。
截止時間:2018/06/03 18:00
本活動需要在我們的微信公眾號對應文章中參與。