Java序列化和反序列化是一種將Java對象轉換為字節流或將字節流轉換為Java對象的機制。序列化可以將Java對象保存到磁盤或通過網絡傳輸到其他計算機。反序列化則可以將字節流轉換回Java對象。
在Java應用程序中,我們可以使用ObjectOutputStream來序列化對象并將其保存到文件中。以下是一個示例:
try { FileOutputStream fileOut = new FileOutputStream("employee.ser"); ObjectOutputStream out = new ObjectOutputStream(fileOut); out.writeObject(employee); out.close(); fileOut.close(); } catch (IOException i) { i.printStackTrace(); }
在上面的代碼中,我們將一個名為employee的Java對象寫入磁盤。我們將此文件命名為employee.ser。ObjectOutputStream將Java對象轉換為字節流并保存到文件中。
反過來,我們可以使用ObjectInputStream將字節流轉換回Java對象。以下是一個示例:
try { FileInputStream fileIn = new FileInputStream("employee.ser"); ObjectInputStream in = new ObjectInputStream(fileIn); Employee employee = (Employee) in.readObject(); in.close(); fileIn.close(); } catch (IOException i) { i.printStackTrace(); } catch (ClassNotFoundException c) { c.printStackTrace(); }
在上面的代碼中,我們將employee.ser文件讀入字節流。然后,我們使用ObjectInputStream將字節流轉換回Java對象。
總的來說,Java序列化和反序列化是一種非常有用的機制,它可以讓我們輕松地保存和傳輸Java對象。
上一篇php 5.28
下一篇ajax 圖片上傳服務器