在 mongo shell 中可以使用 load
命令运行 js 文件:
load("path/to/file/file.js")
如何使用 spring-data 做到这一点?或Java中的任何其他方式。 我试过了:
BasicDBObject obj = new BasicDBObject();
obj.append( "$load" , "/path/file.js" );
CommandResult t=mongoTemplate.executeCommand(obj);
和:
obj.append( "$eval" , "load(\"/path/file.js\")" );
但它不起作用。
最佳答案
这里是 reference docs 的相关部分关于如何在 Spring Data MongoDB 中使用脚本。
ScriptOperations scriptOps = template.scriptOps();
// Execute script directly
ExecutableMongoScript echoScript = new ExecutableMongoScript("function(x) { return x; }");
scriptOps.execute(echoScript, "directly execute script");
// Register script and call it later
scriptOps.register(new NamedMongoScript("echo", echoScript));
scriptOps.call("echo", "execute script via name");
关于java - 如何使用spring数据在mongo中运行js文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32486488/