我见过几篇关于marshaling
和serialization
的帖子和主题,我期待获得一些额外的理解/澄清我的思考过程。编组和序列化之间的澄清
我读了What is the difference between Serialization and Marshaling?,很多反应表明它们在某种意义上是同义词。但我想我可能会澄清一些差异。
我理解的是Java序列接受一个对象,并使其进入然后可以解串行化的二进制流中,如图以下示例http://www.tutorialspoint.com/java/java_serialization.htm
对于marshaling
/demarshaling
,我见过的类被转换成一个xml
表示bean,并具有在客户端和服务器之间传递的信息,然后在另一端重新创建。
基于以上我的问题(S)是:
- 系列化是否总是为二进制格式?如果是这样,我们是否必须担心不同的机器体系结构,比如Big Indian vs. Little Indian,还是java为我们处理?
- 如果我们通过电线将我们的数据表示为
xml
或json
,那么这总是被称为marshaling
/demarshaling
? - 如果上面的项目符号是真的,那么对于另一项是否有优势?