이 글에서는 주로 Java 직렬화 및 역직렬화 예제 관련 정보를 자세히 소개합니다. 필요한 친구는
자세한 Java 직렬화 및 역직렬화 예제
를 참고하세요. 분산 응용 프로그램에서 객체는 직렬화된 후에 분산 구성 요소 간에만 전송될 수 있습니다. 여기에는 기술의 두 가지 측면이 포함됩니다. 송신자는 객체를 직렬화하고 수신자는 객체를 역직렬화합니다. 여기에 좋은 예가 있습니다.
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; }
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.
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. 출력
[B@e05d173 Name: admin,Age: 20
5. 요약
위 내용은 Java 직렬화 및 역직렬화 샘플 코드 공유의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!