使用spring boot查询mongodb中的存储过程
我想查询mongodb中的存储过程。我可以使用命令行工具进行查询,但在使用java进行查询时遇到问题。引发错误的代码段(最后两行)是:使用spring boot查询mongodb中的存储过程,mongodb,mongodb-query,spring-data-mongodb,mongodb-java,mongo-java-driver,Mongodb,Mongodb Query,Spring Data Mongodb,Mongodb Java,Mongo Java Driver,我想查询mongodb中的存储过程。我可以使用命令行工具进行查询,但在使用java进行查询时遇到问题。引发错误的代码段(最后两行)是: MongoClient mongoClient = new MongoClient(); MongoDatabase mdb = mongoClient.getDatabase("mydb"); mdb.runCommand(new Document("$eval", "db.loadServerScripts()")); Document doc1 = mdb
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)"));
它抛出的错误是:服务器localhost:27017上没有这样的命令:'$eval'。完整的响应是{“ok”:0.0,“errmsg”:“没有这样的命令:'$eval',“code”:59,“codeName”:“CommandNotFound”}
现在我读了几篇文章和文档,指出$eval
或db.eval()
不适用于mongo 4.2版。那么我应该在代码中做些什么来让它工作呢,或者可能的解决方案是什么呢。我知道这个问题已经被问过好几次了,但是这些解决方案已经过时了,所以我需要帮助。有人能帮忙吗
在mongodb-4.2中,现在不推荐对eval命令的支持
所以我想现在唯一的选择就是使用mongodb-4.0
资料来源: