将查询或管道导出为语言
您可以将查询文档和聚合管道从 Playground 导出并转换为编程语言。 您可以将查询和管道导出为以下语言:
-
C#
-
Go
-
Java
-
Node.js
-
PHP
-
Python
-
Ruby
-
Rust
先决条件
您必须打开一个包含要导出的查询文档或管道的 Playground。
本页上的教程使用默认的 Playground 模板。
要打开包含默认模板的新 Playground,请执行以下操作:
查找并运行“创建 MongoDB Playground”命令。
使用 Command Palette 搜索栏搜索命令。 与VS Code扩展相关的所有命令都以 MongoDB: 开头。
当您运行 MongoDB: Create MongoDB Playground 命令时, VS Code扩展会打开一个预先配置了一些命令的默认Playground 模板。
注意
要加载没有模板的新 Playground,请禁用 Use Default Template For Playground 设置。要了解有关 VS Code 扩展设置的更多信息,请参阅 Visual Studio 代码设置。
导出查询文档
要导出查询文档,请执行以下操作:
配置导出选项
您可以选择是否在导出的代码中包含导入声明和/或驱动程序语法。
在新打开的包含导出代码的 VS Code 窗口顶部,使用 Import Statements 和 Driver Syntax 开关来控制这些选项。
包含上述 Java 代码的 import 语句和驱动程序语法会产生以下输出:
import org.bson.Document; import com.mongodb.MongoClient; import com.mongodb.MongoClientURI; import com.mongodb.client.FindIterable; import com.mongodb.client.MongoCollection; import com.mongodb.client.MongoDatabase; import org.bson.conversions.Bson; import java.util.concurrent.TimeUnit; import org.bson.Document; /* * Requires the MongoDB Java Driver. * https://mongodb.github.io/mongo-java-driver */ MongoClient mongoClient = new MongoClient( new MongoClientURI
( "mongodb://localhost:27017/?readPreference=primary&appname=mongodb-vscode+0.7.0&directConnection=true&ssl=false" ) ); MongoDatabase database = mongoClient.getDatabase("mongodbVSCodePlaygroundDB"); MongoCollection<Document> collection = database.getCollection("sales"); FindIterable<Document> result = collection.aggregate(new Document("date", new Document("$gte", new java.util.Date(1396569600000L)) .append("$lt", new java.util.Date(1396656000000L))));
注意
导出选项因所选导出语言而异。
导出聚合管道
要导出聚合管道,请执行以下操作:
导出您的选择。
-
当您突出显示代码时,会出现一个灯泡图标。 单击 图标。
-
在上下文菜单中,选择要导出的目标语言。 VS Code扩展会打开一个新的VS Code窗口,其中包含所选语言的突出显示代码。
例如,将管道从步骤 1 导出到 Java 会生成以下代码:
Arrays.asList(new Document("$match", new Document("date", new Document("$gte", new java.util.Date(1388534400000L)) .append("$lt", new java.util.Date(1420070400000L)))), new Document("$group", new Document("_id", "$item") .append("totalSaleAmount", new Document("$sum", new Document("$multiply", Arrays.asList("$price", "$quantity"))))))
配置导出选项
您可以选择是否在导出的代码中包含导入声明和/或驱动程序语法。
在新打开的包含导出代码的 VS Code 窗口顶部,使用 Import Statements 和 Driver Syntax 开关来控制这些选项。
包含上述 Java 代码的 import 语句和驱动程序语法会产生以下输出:
import java.util.Arrays; import org.bson.Document; import com.mongodb.MongoClient; import com.mongodb.MongoClientURI; import com.mongodb.client.FindIterable; import com.mongodb.client.MongoCollection; import com.mongodb.client.MongoDatabase; import org.bson.conversions.Bson; import java.util.concurrent.TimeUnit; import org.bson.Document; /* * Requires the MongoDB Java Driver. * https://mongodb.github.io/mongo-java-driver */ MongoClient mongoClient = new MongoClient( new MongoClientURI( "mongodb://localhost:27017/?readPreference=primary&appname=mongodb-vscode+0.7.0&directConnection=true&ssl=false" ) ); MongoDatabase database = mongoClient.getDatabase("mongodbVSCodePlaygroundDB"); MongoCollection<Document> collection = database.getCollection("sales"); FindIterable<Document> result = collection.aggregate(Arrays.asList(new Document("$match", new Document("date", new Document("$gte", new java.util.Date(1388534400000L)) .append("$lt", new java.util.Date(1420070400000L)))), new Document("$group", new Document("_id", "$item") .append("totalSaleAmount", new Document("$sum", new Document("$multiply", Arrays.asList("$price", "$quantity")))))));
注意
导出选项因所选导出语言而异。