古詩詞大全網 - 成語故事 - 在java裏如何使用數據庫中的序列

在java裏如何使用數據庫中的序列

首先說明壹下序列化的知識:java中的序列化(serialization)機制能夠將壹個實例對象的狀態信息寫入到壹個字節流中,使其可以通過socket進行傳輸、或者持久化存儲到數據庫或文件系統中;然後在需要的時候,可以根據字節流中的信息來重構壹個相同的對象。序列化機制在java中有著廣泛的應用,EJB、RMI等技術都是以此為基礎的。序列化機制是通過java.io.ObjectOutputStream類和java.io.ObjectInputStream類來實現的。在序列化(serialize)壹個對象的時候,會先實例化壹個ObjectOutputStream對象,然後調用其writeObject()方法;在反序列化(deserialize)的時候,則會實例化壹個ObjectInputStream對象,然後調用其readObject()方法。上面您的錯誤,就是在於有壹個或者幾個沒有"序列化"的數據,導致沒有辦法創建輸出流,導致發生的java.io.NotSerializableException。之所以要序列化,我猜測是因為您的數據裏面存在壹個對象型的數據,但是該對象沒有實現序列化。比如:您有壹個字段為address,這個字段您是通過壹個類Address來描述的,Address裏面可能有province、city、street等等屬性或者壹些setter 和getter,如果這個類,沒有實現序列化,往往會出現這個問題。畢竟沒有看到程序,是我的壹個猜測,請檢查壹下程序或者發出來進行進壹步討論。