bar*_*nus 7 java mongodb spring-data-mongodb
在mongo shell中,js文件可以使用load命令运行:
load("path/to/file/file.js")
Run Code Online (Sandbox Code Playgroud)
如何使用spring-data做到这一点?或者Java中的任何其他方式.我试过了:
BasicDBObject obj = new BasicDBObject();
obj.append( "$load" , "/path/file.js" );
CommandResult t=mongoTemplate.executeCommand(obj);
Run Code Online (Sandbox Code Playgroud)
和:
obj.append( "$eval" , "load(\"/path/file.js\")" );
Run Code Online (Sandbox Code Playgroud)
但它不起作用.
Oli*_*ohm 10
以下是有关如何使用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");
Run Code Online (Sandbox Code Playgroud)