0

嗨,任何人都知道一个 Java 库来帮助将 a 序列化/反序列com.mongodb.DBObject化为BSON二进制文件,反之亦然?

4

2 回答 2

2

这相当简单,您可以使用以下辅助方法:

public static byte[] encode(BSONObject bsonObject) {
    BSONEncoder encoder = new BasicBSONEncoder();
    return encoder.encode(bsonObject);
}

public static BSONObject readObject(InputStream is) throws IOException {
    BasicBSONDecoder encoder = new BasicBSONDecoder();
    return encoder.readObject(is);
}

public static BSONObject readObject(byte[] bsonObject) {
    BasicBSONDecoder encoder = new BasicBSONDecoder();
    return encoder.readObject(bsonObject);
}
于 2014-10-06T09:12:49.337 回答
1

当您需要二进制 BSON,即 BSON 格式的字节数组时,您可以使用以下对:

public byte[] DBObjectToBSON(DBObject dbObject) {
    BasicBSONEncoder encoder = new BasicBSONEncoder();
    return encoder.encode(dbObject);
}

public DBObject BSONToDBObject(byte[] bson) {
    BasicBSONDecoder decoder = new BasicBSONDecoder();
    JSONCallback callback = new JSONCallback();
    decoder.decode(bson, callback);
    return (DBObject) callback.get();
}
于 2015-06-23T10:01:36.980 回答