ホームページ >Java >&#&チュートリアル >Java シリアル化および逆シリアル化のサンプル コードの共有
この記事では、主に Java のシリアル化と逆シリアル化の例についての関連情報を紹介します。必要な方は参考にしてください。
Java のシリアル化と逆シリアル化の例について詳しく説明します
分散アプリケーションでは、オブジェクトはシリアル化を介してのみ送信できます。これには、送信者がオブジェクトをシリアル化し、受信者がオブジェクトを逆シリアル化するという 2 つのテクノロジーの側面が関係します。以下は良い例です。
1.エンティティ-従業員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;
}
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;
}
}
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());
}
}
シリアライズとデシリアライズがありますHession など、変換を完了するために使用できる他のフレームワークについては、機会があればもう一度勉強します。
以上がJava シリアル化および逆シリアル化のサンプル コードの共有の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。