如何从 BSON 对象中获取可读字符串
How to get a readable string from BSON object
我有一个 org.bson.conversions.Bson
对象,我想把它变成可读的东西以便调试。
我试过为此使用 Mongo JSON 实用程序,但我收到 RuntimeException
s,说它无法序列化类型 com.mongodb.client.model.Filters$AndFilter
Bson query = ...
String json = com.mongodb.util.JSON.serialize(query);
这确实告诉了我一些关于 BSON 结构的信息,但我仍然希望它以某种方式具有可读性。
您可以使用 toBsonDocument 将 Bson
实例转换为 BsonDocument
,然后使用 BsonDocument.toJson()
。
例如...
Bson bson = Filters.eq("name", "Bob");
BsonDocument asBsonDocument = bson.toBsonDocument(BsonDocument.class,
MongoClient.getDefaultCodecRegistry());
System.out.println(asBsonDocument.toJson());
... 将打印:
{ "name" : "Bob" }
我有一个 org.bson.conversions.Bson
对象,我想把它变成可读的东西以便调试。
我试过为此使用 Mongo JSON 实用程序,但我收到 RuntimeException
s,说它无法序列化类型 com.mongodb.client.model.Filters$AndFilter
Bson query = ...
String json = com.mongodb.util.JSON.serialize(query);
这确实告诉了我一些关于 BSON 结构的信息,但我仍然希望它以某种方式具有可读性。
您可以使用 toBsonDocument 将 Bson
实例转换为 BsonDocument
,然后使用 BsonDocument.toJson()
。
例如...
Bson bson = Filters.eq("name", "Bob");
BsonDocument asBsonDocument = bson.toBsonDocument(BsonDocument.class,
MongoClient.getDefaultCodecRegistry());
System.out.println(asBsonDocument.toJson());
... 将打印:
{ "name" : "Bob" }