使用Spring Boot在mongodb中查询存储过程

我想查询mongodb中的存储过程。我可以使用命令行工具来查询它,但是在使用java进行查询时遇到问题。抛出错误的代码(最后两行)是:

MongoClient mongoClient = new MongoClient();
MongoDatabase mdb = mongoClient.getDatabase("mydb");
mdb.runCommand(new Document("$eval","db.loadServerScripts()"));
Document doc1 = mdb.runCommand(new Document("$eval","mysp(5)"));

并且它引发的错误是'no such command: '$eval'' on server localhost:27017. The full response is {"ok": 0.0,"errmsg": "no such command: '$eval'","code": 59,"codeName": "CommandNotFound"}

现在,我阅读了几篇文章和文档,并指出$evaldb.eval()不适用于mongo 4.2版。因此,我应该在代码中进行哪些更改以使其起作用,或者应该采取什么解决方案。我知道这个问题已经问过几次了,但是这些解决方案已经过时了,因此我需要帮助。谁能帮忙。

lyc5748056 回答:使用Spring Boot在mongodb中查询存储过程

enter image description here

从mongodb-4.2开始,现在不支持eval命令。

所以我想唯一的选择就是从现在开始使用mongodb-4.0。

来源:https://docs.mongodb.com/manual/reference/method/db.eval/

本文链接:https://www.f2er.com/2353242.html

大家都在问