簡體   English   中英

MongoDB列出了java中的可用數據庫

[英]MongoDB list available databases in java

我正在編寫一個算法,它將通過java中所有可用的Mongo數據庫。

在Windows shell上我就是這么做的

show dbs

我怎樣才能在java中執行此操作並獲取所有可用數據庫的列表?

你會這樣做:

MongoClient mongoClient = new MongoClient();
List<String> dbs = mongoClient.getDatabaseNames();

這將簡單地為您提供所有可用數據庫名稱的列表。

您可以在此處查看文檔。

更新:

正如下面提到的@CydrickT, getDatabaseNames已被棄用,因此我們需要切換到:

MongoClient mongoClient = new MongoClient();
MongoCursor<String> dbsCursor = mongoClient.listDatabaseNames().iterator();
while(dbsCursor.hasNext()) {
    System.out.println(dbsCursor.next());
}

對於任何來到這里的人,因為方法getDatabaseNames(); 已棄用/不可用,以下是獲取此信息的新方法:

MongoClient mongoClient = new MongoClient();
MongoCursor<String> dbsCursor = mongoClient.listDatabaseNames().iterator();
while(dbsCursor.hasNext()) {
    System.out.println(dbsCursor.next());
}

這是一個返回數據庫名稱列表的方法,如前面的getDatabaseNames()方法:

public List<String> getDatabaseNames(){
    MongoClient mongoClient = new MongoClient(); //Maybe replace it with an already existing client
    List<String> dbs = new ArrayList<String>();
    MongoCursor<String> dbsCursor = mongoClient.listDatabaseNames().iterator();
    while(dbsCursor.hasNext()) {
        dbs.add(dbsCursor.next());
    }
    return dbs;
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM