본문 바로가기
IT/Java

marshalling / unmarshalling (직렬화와의 차이 feat. 코드베이스)

by 성준하이 2023. 12. 20.
반응형

marshalling의 단어 뜻은 정렬시키기, 순위 결정 이라는 뜻을 갖고 있다.

 

컴퓨터 에서 말하는 마샬링은

한 객체의 메모리에서 표현방식을 저장 또는 전송에 적합한 다른 데이터 형식으로 변환하는 과정

이라고 한다.

 

https://ko.wikipedia.org/wiki/%EB%A7%88%EC%83%AC%EB%A7%81_(%EC%BB%B4%ED%93%A8%ED%84%B0_%EA%B3%BC%ED%95%99)

 

마샬링 (컴퓨터 과학) - 위키백과, 우리 모두의 백과사전

위키백과, 우리 모두의 백과사전. 컴퓨터 과학에서 마셜링(marshalling, l을 하나만 사용하여 marshaling이라고도 표기)이란 한 객체의 메모리에서 표현방식을 저장 또는 전송에 적합한 다른 데이터 형

ko.wikipedia.org

 

자바에서의 마샬링이란 자바 객체를 byte stream 으로 변환하는 과정을

반대로 언마샬링이란 stream이나 파일로부터 자바객체를 만들어내는 과정을 말한다.

 

즉 자바 객체를 통신 가능한 상태로 만드는것을 마샬링이라고 할수 있다.

 

참고포스팅을 보면 자바의 직렬화가 있는데,

직렬화와의 차이점은

마샬링은 직렬화보다 더 큰 개념으로 사용된다. 
그래서 직렬화 가능하거나 리모트 가능한 모든 객체는 마샬링이 가능하다.
 
즉 정리하면 큰 차이는 직렬화는 객체가 대상이고 
마샬링은 변환 그 자체의 목적으로 코드베이스를 기록하는데 차이가 있다.

 

코드베이스(codebase)는 특정 소프트웨어 시스템, 응용 소프트웨어, 소프트웨어 구성 요소를 빌드하기 위해 사용되는 소스 코드의 모임이다. 

참고 포스팅

https://thenicesj.tistory.com/298

 

자바 직렬화(Serializable)

자바에서 사용하는 직렬화의 의미는 자바 시스템 내부에서 사용되는 객체 또는 데이터를 외부의 자바 시스템에서도 사용할 수 있도록 바이트(byte) 형태로 데이터 변환하는 기술 시스템적인 면

thenicesj.tistory.com

 

반응형

'IT > Java' 카테고리의 다른 글

@ColumnDefalut Annotation  (35) 2023.12.27
@Builder.Default [lombok]  (31) 2023.12.24
JSONObject 에 대해서  (24) 2023.12.19
Java 에서 Redis 사용하기 (@RedisHash , ValueOperations)  (34) 2023.12.06
java.util.Date / java.sql.Date 차이  (38) 2023.12.05

댓글