【发布时间】:2010-09-07 06:49:06
【问题描述】:
我们在 java http://blog.locut.us/main/2009/10/14/which-is-the-best-java-json-library.html 中对 JSON 有很好的支持,但是 BSON 呢。
您知道哪些库为 java 提供 BSON 支持? 它在运行时显然应该是高效的。
【问题讨论】:
我们在 java http://blog.locut.us/main/2009/10/14/which-is-the-best-java-json-library.html 中对 JSON 有很好的支持,但是 BSON 呢。
您知道哪些库为 java 提供 BSON 支持? 它在运行时显然应该是高效的。
【问题讨论】:
您可以使用 Java 的 MongoDB 驱动程序来存储 BSON 对象,然后将其转换为 String,然后您可以使用 JSONObject 进行包装。
例如,我将创建一个常规文档:
BasicDBObject obj = new BasicDBObject();
obj.put("name", "Matt");
obj.put("date", new Date());
然后,要获得对象的String 表示,只需调用:
String bsonString = obj.toString();
用JSONObject 包装它并获取日期属性,它应该以符合 BSON 的格式返回它。
JSONObject newObject = new JSONObject(bsonString);
System.out.println(newObject.get("date"));
结果输出类似于:
{"$date":"2012-08-10T05:22:53.872Z"}
【讨论】:
如果您想在 MongoDB 中使用它,请查看 this example
【讨论】:
为了在 MongoDB 中获取模型,我们首先使用 google gson 将模型转换为 JSON,然后使用JSON util parse method from MongoDB 将生成的 JSON 字符串解析为可以放入 MongoDB 的 DBObject。老实说,我不知道性能。
【讨论】:
还有ebson。我没试过……
【讨论】:
还有一个相当新的BSON4Jackson 项目,它允许使用Jackson 处理BSON 数据。这意味着完整的数据绑定(到/从 POJO)、树模型,甚至流式(增量)读/写,都可以使用 BSON 格式完成。
【讨论】: