자바 프로그래밍을 하다보면 marshalling(마샬링), unmarshalling(언마샬링) 등의 단어를 자주 접하게 된다.
marshal 이란 단어는 사전에서 찾아보면 명사로 쓰일 때는 군대의 원수나 경찰서장, 법원의 집행관 등을 의미하고 , 동사로서는 모으다, 결집시키다,통제하다 라는 뜻이 있다. 즉, 많은 것들을 모으거나 통제한다는 관리적인 개념의 단어라고 할 수 있다.
marshalling이란 단어를 찾아보면 정렬시키기, 순위결정 이라고 나온다.
자바에서 마셜링이란 자바 객체를 byte stream으로 변환하는 과정을 의미한다. 또는 자바 객체를 XML문서로 변환하는 것을 의미하기도 한다. 마셜링이란 단어가 정렬시키기를 의미한다고 생각했을 때 데이터를 잘 정돈된 상태로 만드는 이미지를 상상할 수 있다. 잘 정돈된 상태여야 나중에 복원(언마셜링)을 할 수 있을 것이기 때문이다.
정리하면, 메모리에 존재하는 자바 객체를 범용적인 파일이나 바이트 스트림으로 변환 하는 작업을 마셜링이라고 부르고, 거꾸로 스트림이나 파일로부터 자바 객체를 만들어내는 작업을 언마셜링이라고 부른다.
쉽게 생각하면 통신 가능한 상태로 만드는 것을 마샬링이라고 생각하면 될 듯 하다.
출저 블로그
'Interface' 카테고리의 다른 글
hosts 파일이란? (0) | 2020.04.01 |
---|---|
HTTP 프로토콜 (0) | 2020.02.21 |