我们运行多个网站,这些网站使用与库相同的丰富功能后端。后端由多个组件组成,它们之间共享许多对象。现在,出于安全原因,我们需要将无状态规则执行组件分离到不同的容器中。如果我可以在规则组件中无缝访问所有后端对象(而不是定义新的接口和对象/适配器),那将是很棒的。
我想使用一种RPC机制,它将无缝地支持通过线路传递我们的java pojos(其中一些是hibernate bean)。像JAXB,Axis等Web服务需要相当多的锅炉板和每个对象的配置。而那些使用Java序列化的人似乎很简单,但我担心向后/向前兼容性问题。
到目前为止,我们正在使用Xstream将对象序列化为持久性存储和快乐。但是,流行的rpc / webservice框架似乎都没有使用xstream进行序列化。是否可以使用xstream并使用我的自定义实现通过HTTP发送我的对象?或者java序列化是否正常工作还是有更好的选择吗?
感谢您的建议。
答案 0 :(得分:0)
标准Java序列化的好处在于它产生的二进制流比任何这些XML序列化机制具有更高的空间和带宽效率。但正如您所写,XML可以更加向后/向前兼容,并且如果需要,可以更容易手动和/或脚本进行解析和修改。这是一个权衡;如果你需要长时间存储,那么建议避免普通的序列化。
我是一个快乐的XStream用户。到目前为止零问题。