Eu vi vários posts e tópicos sobre marshaling
e serialization
e eu estou olhando para ganhar alguma compreensão adicional / esclarecer o meu processo de pensamento.
Eu leio Qual é a diferença entre Serialização e Marshaling? e muitas das respostas mostram que elas são sinonímias em certo sentido. Mas acho que pode haver algumas diferenças que estou tentando esclarecer.
Meu entendimento é que a serialização java pega um objeto e o transforma em um fluxo binário que pode ser desserializado, como mostrado no exemplo a seguir. http://www.tutorialspoint.com/java/java_serialization.htm
Para marshaling
/demarshaling
, Eu vi as aulas serem convertidas em um xml
representação do bean e ter as informações passadas entre um cliente e um servidor, em seguida, recriado no outro extremo.
Com base no acima minha pergunta (s) são:
- A serialização sempre vai para o formato binário? Em caso afirmativo, temos que nos preocupar com arquiteturas de máquinas diferentes, como Big Indian vs. Little Indian, ou o Java lida com isso para nós?
- Se representarmos nossos dados pelo fio como
xml
oujson
, isso é sempre referido comomarshaling
/demarshaling
? - Se as balas acima são verdadeiras, então existe uma vantagem sobre a outra?
Respostas:
0 para resposta № 1Eu acho que é apenas uma questão de gosto e contexto. Na maioria das vezes eu encontro o termo qualquer um dos termos significa que você quer transformar um objeto em uma seqüência de 0 e 1. Mas, às vezes, uma especificação pode atribuir um significado ligeiramente diferente a ela.
Veja o caso de java na wikipedia. http://en.wikipedia.org/wiki/Marshalling_(computer_science)