Heim  >  Artikel  >  Java  >  Gemeinsame Nutzung von Java-Serialisierungs- und Deserialisierungs-Beispielcodes

Gemeinsame Nutzung von Java-Serialisierungs- und Deserialisierungs-Beispielcodes

黄舟
黄舟Original
2017-03-27 10:33:591423Durchsuche

In diesem Artikel werden hauptsächlich relevante Informationen zu Java-Serialisierungs- und Deserialisierungsbeispielen im Detail vorgestellt. Freunde, die sie benötigen, können sich auf

Java-Serialisierungs- und Deserialisierungsbeispiele im Detail beziehen

In verteilten Anwendungen können Objekte erst nach der Serialisierung zwischen verteilten Komponenten übertragen werden. Dies beinhaltet zwei Aspekte der Technologie: Der Absender serialisiert das Objekt und der Akzeptor. Oder deserialisieren Sie das Objekt, hier ist ein gutes Beispiel!

1. Entity-Employee

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

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 Klasse

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. Ausgabe

[B@e05d173 
Name: admin,Age: 20

5. Zusammenfassung

Es gibt andere Frameworks, die die Deserialisierung und Deserialisierung abschließen können, wie zum Beispiel Hession. Ich werde es bei Gelegenheit noch einmal studieren!

Das obige ist der detaillierte Inhalt vonGemeinsame Nutzung von Java-Serialisierungs- und Deserialisierungs-Beispielcodes. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn