Java序列化注意事项
為什么80%的碼農都做不了架構師?>>> ??
什么是Java序列化和反序列化:
????Java序列化是指把Java對象轉換為字節序列的過程;而Java反序列化是指把字節序列恢復為Java對象的過程。
用途:
? ? 當傳輸數據的時候,不可能傳輸java對象。需要將java對象轉化成json字符串、String字符串、字節碼等傳輸,然后再反序列化成java對象。
如何應用序列化和反序列化:
? ? 百度發現序列化和反序列化有兩種繼承Serializable接口或者Externalizable接口,或者還有更多實現的方式。因為項目中用到的只有Serializable接口,所以今天這個只說Serializable接口,以后有接觸到其他的再進行補充。
Serializable:
? ? 注:serializable接口里面內容是空的。它屬于標識接口,標識某各類只要實現此接口就會具備某種特性。
? ? 對類的要求:
? ? 1、必須繼承Serializable接口實現序列化功能。
? ? 2、類必須要有空的構造器。當類沒有構造器的時候,jvm會自動給類添加一個空的構造器,如果類中有非空的構造器,那么jvm不會給再添加空的構造器,那樣就無法建立該類的對象。
? ? 3、使用transient,修飾屬性,而不能修飾方法和類,被transient修飾的屬性不會被序列化,可以起到保護敏感數據的數據(比如銀行賬戶信息,將password用transient修飾,那么密碼就不會被傳過去,如果是string類型,那么接收過來是null)
????
轉載于:https://my.oschina.net/WEguo/blog/1538202
總結
以上是生活随笔為你收集整理的Java序列化注意事项的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Too many links;mkdir
- 下一篇: 第0次个人作业