执行类似于rs.conf()等命令,用mongodbTemplate操作数据库。当然最后的方式还是用shell去执行,更快。
spring MongoDB官方驱动文档【11.14. Running Commands】说通过mongoTemplate.executeCommand()执行命令,
用mongoTemplate.executeCommand()方法代替的是db.command()
java中应用实例
Document document = mongoTemplate.executeCommand("{\"hello\":1}");
System.out.println(document.toJson());
在19.1. 分片集合执行了adminCommand方法
MongoDatabase adminDB = template.getMongoDbFactory()
.getMongoDatabase("admin");
adminDB.runCommand(new Document("enableSharding", "db"));
Document shardCmd = new Document("shardCollection", "db.users")
.append("key", new Document("country", 1).append("userid", 1));
adminDB.runCommand(shardCmd);