직렬화와 역직렬화: 외부와 내부 데이터 간 변환의 이해

민준·2024년 12월 24일
0
post-thumbnail

직렬화/역직렬화 : 외부 데이터 형태와 내부 데이터 형태 사이의 변환

  • 외부 : REST API 를 통해 광활한 네트워크를 떠돌아다니는 모든 데이터는 문자열(JSON)로 전송된다.
  • 내부 : 백엔드 프로그래밍 언어로 개발한 웹 서버에서 모든 데이터는 객체(Object)로 다뤄진다.

직렬화(Serialization)와 역직렬화(Deserialization)의 정의

  • 직렬화 (Serialization)
    객체(Object)나 데이터 구조를 저장하거나 전송 가능한 형식으로 변환하는 과정입니다. (Object -> Json)
    보통 텍스트 형식(JSON, XML 등)이나 바이너리 형식으로 변환됩니다.

    • 목적
      데이터를 파일에 저장 (Persistence)
      네트워크를 통해 데이터를 전송
  • 역직렬화 (Deserialization)
    직렬화된 데이터(Json 등)를 다시 원래의 객체나 데이터 구조로 복원하는 과정 (Json -> Object)
    전송받은 데이터를 백엔드에서 다시 사용할 수 있도록 처리

    • 목적
      프로그램이 작업할수 있는 데이터 구조로 변환

요약

  • 요청 : HTTP Request Body JSON(1차원, String) → Java 객체(2차원) : Deserialization 역직렬화
  • 응답 : Java 객체(2차원) → HTTP Response Body JSON(1차원, String) : Serialization 직렬화

0개의 댓글