我想确认我编写的解析器是否正常工作。它需要一个可以从终端运行的JavaScript mongodb命令,并将其转换为MongoDB / Java驱动程序的Java对象。
以下.toString()结果是否有效?
{ "NumShares " : 1 , "attr4 " : 1 , "symbol" : { "$regex" : "ESLR%"}}
这是从以下JavaScript
转换而来的db.STOCK.find({ "symbol": "ESLR%" }, { "NumShares" : 1, "attr4" : 1 })
当然,数据存在于集合中
{ "_id" : { "$oid" : "538c99e41f12e5a479269ed1"} , "symbol" : "ESLR" , "NumShares" : 3471.0}
感谢您的帮助
答案 0 :(得分:1)
您已将find()
调用中的查询文档和项目文档合并到一个文档中。这可能不是你想要的。但那些文件只是json所以你可以使用任何解析器来转换它们。在ObjectIDs,日期,DBRef,特别是正则表达式中,你需要处理一些问题,但是在解析之前通过转义/引用它们可以毫不费力地管理它们。