如何使用 Java 列出 MongoDB 数据库中的所有集合?
javaobject oriented programmingprogramming
您可以使用 show collections.
打印数据库中所有现有集合的列表示例
假设我们在 MongoDB 数据库中创建了 3 个集合,如下所示 −
> use sampleDatabase switched to db sampleDatabase > db.createCollection("students") { "ok" : 1 } > db.createCollection("teachers") { "ok" : 1 } > db.createCollection("sample") { "ok" : 1 }
以下查询列出了数据库中的所有集合 −
> use sampleDatabase switched to db sampleDatabase > show collections sample students teachers
使用 Java 程序
在 Java 中,您可以使用 com.mongodb.client.MongoCollection 接口的 listCollectionNames() 方法获取当前数据库中所有集合的名称。
因此,要使用 Java 程序列出 MongoDB 中数据库中的所有集合 −
确保您已在系统中安装了 MongoDB
将以下依赖项添加到 Java 项目的 pom.xml 文件中。
<dependency> <groupId>org.mongodb</groupId> <artifactId>mongo-java-driver</artifactId> <version>3.12.2</version> </dependency>
通过实例化 MongoClient 类创建 MongoDB 客户端。
使用 getDatabase() 方法连接到数据库。
使用 listCollectionNames() 方法获取集合列表。
示例
import com.mongodb.client.MongoDatabase; import com.mongodb.client.MongoIterable; import com.mongodb.MongoClient; public class ListOfCollection { public static void main( String args[] ) { // 创建 Mongo 客户端 MongoClient mongo = new MongoClient( "localhost" , 27017 ); // 连接到数据库 MongoDatabase database = mongo.getDatabase("mydatabase"); // 创建多个集合 database.createCollection("sampleCollection1"); database.createCollection("sampleCollection2"); database.createCollection("sampleCollection3"); database.createCollection("sampleCollection4"); //检索集合列表 MongoIterable<String> list = database.listCollectionNames(); for (String name : list) { System.out.println(name); } } }
输出
sampleCollection3 sampleCollection2 sampleCollection4 sampleCollection1