需要连接个Mongodb数据库,做了一下调研,发现网上大多的文章都比较老,连接比较复杂而且没有用到用户名和密码,同时他们使用MongoCredential使用许多弃用的方法。
查了半天,发现可以使用MongoClientURI,经过简单的demo测试,成功连接。
import java.util.ArrayList;
import java.util.List;
import com.mongodb.*;
import com.mongodb.MongoClient;
import com.mongodb.client.*;
public class MongoDBTest {
public static MongoClient mongoClient;
static {
MongoClientURI uri = new MongoClientURI("mongodb://(用户名):(密码)@(ip):(port)/(database名)");
mongoClient = new MongoClient(uri);
}
public static MongoDatabase getDB(String dbName) {
if (dbName != null && !"".equals(dbName)) {
MongoDatabase database = mongoClient.getDatabase(dbName);
return database;
}
return null;
}
public static void main(String[] args) {
MongoDatabase mongoDatabase = getDB("efficiency_analysis");
MongoIterable<String> colls = mongoDatabase.listCollectionNames();
List<String> _list = new ArrayList<String>();
for (String s : colls) {
System.out.println(s);
_list.add(s);
}
}
}
亲测可以。