serialization code (#1844)

* adds serialization code

* fixes serialization unit test

* adds code for custom serialization

* changed test case names

* fixes test names
This commit is contained in:
Yasser Afifi
2017-05-14 16:39:23 +01:00
committed by Zeger Hendrikse
parent 1a10fda1a8
commit 47a97d3177
3 changed files with 90 additions and 2 deletions

View File

@@ -0,0 +1,15 @@
package com.baeuldung.serialization;
public class Address {
private int houseNumber;
public int getHouseNumber() {
return houseNumber;
}
public void setHouseNumber(int houseNumber) {
this.houseNumber = houseNumber;
}
}

View File

@@ -0,0 +1,44 @@
package com.baeuldung.serialization;
import java.io.IOException;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
import java.io.Serializable;
public class Employee implements Serializable {
private static final long serialVersionUID = 1L;
private transient Address address; // not an serializable object
private Person person;
public Address getAddress() {
return address;
}
public void setAddress(Address address) {
this.address = address;
}
public Person getPerson() {
return person;
}
public void setPerson(Person person) {
this.person = person;
}
private void writeObject(ObjectOutputStream oos) throws IOException {
oos.defaultWriteObject();
oos.writeObject(address.getHouseNumber());
}
private void readObject(ObjectInputStream ois) throws ClassNotFoundException, IOException {
ois.defaultReadObject();
Integer houseNumber = (Integer) ois.readObject();
Address a = new Address();
a.setHouseNumber(houseNumber);
this.setAddress(a);
}
}