将Google Gson等对象序列化为紧凑的二进制格式?

时间:2011-02-13 16:21:51

标签: java serialization

我希望有一个库允许Java POJO的序列化,类似于Google优秀的Gson库。

但是,我需要序列化格式非常紧凑(它们需要适合单独的UDP数据包),所以我担心序列化为JSON会浪费,并且更喜欢二进制格式。

有这样的事吗?

3 个答案:

答案 0 :(得分:2)

请改用Hessian。如果您想节省更多空间,请使用GZipOutput/Input Stream

修饰其流

答案 1 :(得分:2)

您是否尝试过默认的序列化格式?它是二进制的,但不是跨语言的。

也许gzipped JSON可以工作。

或者您可以查看protocol buffers

答案 2 :(得分:0)

前几天我发现BSON声称是JSON的简单二进制表示。我没试过这个,但是从它的常见问题解答来看,它并不总是比JSON更紧凑(小数字使用更多空间),但更容易(更快)解析和生成。如果您已经知道要传输的数据类型,那么其他协议可能比这更有效(就空间而言)。