
Serialize와 Deserialize의 차이점은 데이터의 방향입니다. Serialize는 객체를 데이터로 변환하는 것을 말합니다. 예를 들어, 객체를 JSON 또는 XML 형식으로 변환하는 것을 말합니다. 반면 Deserialize는 데이터를 객체로 변환하는 것을 말합니다. 예를 들어, JSON 또는 XML 형식의 데이터를 객체로 변환하는 것을 말합니다.
Serialize는 객체의 상태를 데이터로 변환하여 저장하는 것을 말합니다. 예를 들어, 객체의 필드 값을 JSON 또는 XML 형식으로 변환하여 파일에 저장하는 것을 말합니다. Deserialize는 저장된 데이터를 객체로 변환하여 사용하는 것을 말합니다. 예를 들어, JSON 또는 XML 형식의 데이터를 읽어와 객체로 변환하여 사용하는 것을 말합니다.
Serialize와 Deserialize는 서로 반대되는 개념입니다. Serialize는 데이터를 객체로 변환하는 것이 아니라, 객체를 데이터로 변환하는 것을 말합니다. Deserialize는 데이터를 객체로 변환하는 것이 아니라, 데이터를 객체로 변환하는 것을 말합니다.
Serialize와 Deserialize의 예를 들어보겠습니다. Serialize를 사용하여 Person 객체를 Serialize하고, Serialize한 데이터를 person.ser 파일에 저장하는 코드는 다음과 같습니다.
#hostingforum.kr
java
import java.io.*;
public class SerializeExample {
public static void main(String[] args) throws IOException {
Person person = new Person("John", 30);
FileOutputStream fos = new FileOutputStream("person.ser");
ObjectOutputStream oos = new ObjectOutputStream(fos);
oos.writeObject(person);
oos.close();
}
}
Deserialize를 사용하여 person.ser 파일에서 Serialize한 데이터를 Deserialize하고, Deserialize한 데이터를 Person 객체로 변환하는 코드는 다음과 같습니다.
#hostingforum.kr
java
import java.io.*;
public class DeserializeExample {
public static void main(String[] args) throws IOException, ClassNotFoundException {
FileInputStream fis = new FileInputStream("person.ser");
ObjectInputStream ois = new ObjectInputStream(fis);
Person person = (Person) ois.readObject();
ois.close();
System.out.println(person.getName() + ", " + person.getAge());
}
}
Serialize와 Deserialize의 차이점을 이해하면, Serialize와 Deserialize를 사용하여 객체를 데이터로 변환하고, 데이터를 객체로 변환할 수 있습니다.
2025-03-30 01:44