激情久久久_欧美视频区_成人av免费_不卡视频一二三区_欧美精品在欧美一区二区少妇_欧美一区二区三区的

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - Java教程 - Java 序列化和反序列化實例詳解

Java 序列化和反序列化實例詳解

2020-09-02 09:43Java之家 Java教程

這篇文章主要介紹了Java 序列化和反序列化實例詳解的相關資料,需要的朋友可以參考下

Java 序列化反序列化實例詳解

在分布式應用中,對象只有經過序列化才能在各個分布式組件之間傳輸,這就涉及到兩個方面的技術-發送者將對象序列化,接受者將對象反序列化,下面就是一個很好的例子!

1.實體-Employee

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
import java.io.Serializable;
 
public class Employee implements Serializable{
  /**
   *
   */
  private static final long serialVersionUID = 1L;
  public String getName() {
    return name;
  }
  public void setName(String name) {
    this.name = name;
  }
  public int getAge() {
    return age;
  }
  public void setAge(int age) {
    this.age = age;
  }
  private String name;
  private int age;
}

2.SerializeHelper

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
 
public class SerializeHelper {
  public byte[] Serialize(Object object) {
    ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
    try {
      ObjectOutputStream objectOutputStream = new ObjectOutputStream(byteArrayOutputStream);
      //將對象寫入到字節數組中進行序列化
      objectOutputStream.writeObject(object);
      return byteArrayOutputStream.toByteArray();
    } catch (IOException e) {
      e.printStackTrace();
    }
    return null;
  }
   
  public Object deSerialize(byte[] bytes) {
    //將二進制數組導入字節數據流中
    ByteArrayInputStream byteArrayInputStream = new ByteArrayInputStream(bytes);
    try {
      //將字節數組流轉化為對象
      ObjectInputStream objectInputStream = new ObjectInputStream(byteArrayInputStream);
      return objectInputStream.readObject();
    } catch (IOException e) {
      e.printStackTrace();
    } catch (ClassNotFoundException e) {
      e.printStackTrace();
    }
    return null;
  }
}

3.測試類

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
public class Hello {
 
  /**
   * @param args
   */
  public static void main(String[] args) {
    // TODO Auto-generated method stub
    SerializeHelper serializeHelper = new SerializeHelper();
    Employee employee = new Employee();
    employee.setName("admin");
    employee.setAge(20);
    byte[] serializObject = serializeHelper.Serialize(employee);
    System.out.println(serializObject);
     
    Employee e = (Employee)serializeHelper.deSerialize(serializObject);
    System.out.println("Name: " + e.getName()+",Age: " + e.getAge());
  }
}

4.輸出

?
1
2
[B@e05d173
Name: admin,Age: 20

5.總結

序列化和反序列化還有其他的框架可以完成,比如Hession,有機會再研究!

感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!

原文鏈接:http://blog.csdn.net/afandaafandaafanda/article/details/49159141

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 九九热精彩视频 | 天天透天天狠天天爱综合97 | 一级大片视频 | 成人区一区二区三区 | 婷婷精品国产一区二区三区日韩 | chinese hd xxxx tube| 久久老司机精品视频 | 日本中文字幕电影在线观看 | 久久在线精品视频 | av最新在线观看 | 波多电影| 国产精品av久久久久久久久久 | 日本在线不卡免费 | 久久久久成人网 | 日韩视频一 | 久久久久亚洲精品 | 免费看性xxx高清视频自由 | 亚洲精品无码不卡在线播放he | jizzjizz中国人少妇中文 | 蜜桃视频在线免费播放 | 女人解衣喂奶电影 | 91avsese| 免费黄色免费 | 国产影院在线观看 | 偿还电影免费看 | 操碰在线视频 | 欧美另类视频在线 | 国产日产精品一区四区介绍 | 看av网址| 久久久一区二区三区四区 | 欧美成人性生活 | 精品国产99久久久久久宅男i | 国产成人精品一区在线播放 | 成人在线免费视频观看 | 萌白酱福利视频在线网站 | 91一区二区三区久久久久国产乱 | 免费黄色一级网站 | 色婷婷久久久亚洲一区二区三区 | 一级黄色免费观看 | 欧美福利视频一区二区三区 | 国产精品一区在线观看 |