javabean為什么需要序列化?
所謂的Serializable,就是java提供的通用數據保存和讀取的接口。至于從什么地方讀出來和保存到哪里
去都被隱藏在函數參數的背后了。這樣子,任何類型只要實現了Serializable接口,就可以被保存到文件中,或者作為數據流通過網絡發送
到別的地方。也可以用管道來傳輸到系統的其他程序中。這樣子極大的簡化了類的設計。只要設計一個保存一個讀取功能就能解決上面說得
所有問題。
java的"對象序列化"能讓你將一個實現了Serializable接口的對象轉換成一組byte,這樣日后要用這個對象時候,你就能把這些byte數
據恢復出來,并據此重新構建那個對象了。
工作流當中流程變量的幾種數據類型:string integer short long double boolean date binary serializable,這就是為什么要將
javabean實現序列化的原因,因為你將對象設置到流程變量中必須要實現序列化,否則會在設置流程變量的時候報錯找不到該類型
java對象序列化機制就是把內存中的Java對象(User之類的JavaBean)轉換成二進制流。java對象序列化后可以很方便的存儲或者在網絡
中傳輸。Java的序列化機制是通過運行時判斷類的序列化ID(serialVersionUID)來判定版本的一致性。在反序列化時,java虛擬機會通過二
進制流中的serialVersionUID與本地的對應的實體類進行比較,如果相同就認為是一致的,可以進行反序列化,正確獲得信息,否則拋出序列
化版本不一致的異常。所以涉及到數據傳輸或者存儲的類,嚴格意義上來說都要加上序列化ID,這也是一種良好的編程習慣。