mongo和mongoClient区别
两个方法都是可以实现连接mongodb
mongo方法
import java.net.UnknownHostException;
import com.mongodb.BasicDBObject;
import com.mongodb.DB;
import com.mongodb.DBCollection;
import com.mongodb.DBObject;
import com.mongodb.Mongo;
public class Test {
public static void main(String[] args) {
try {
/**** Connect to MongoDB ****/
// Since 2.10.0, uses MongoClient
//MongoClient mongo = new MongoClient("localhost", 27017);
Mongo mongo = new Mongo("127.0.0.1",27017);
/**** Get database ****/
// if database doesn't exists, MongoDB will create it for you
DB db = mongo.getDB("testMongoDb");
//database username root and password root
boolean ok = db.authenticate("root","root".toCharArray());
if(ok){
System.out.println("db connection success!");
}{
System.out.println("db connection fail !");
}
}
}
使用mongoClient方法
static final String DBName = "weibo";
static final String ServerAddress = "127.0.0.1";
static final int PORT = 27017;
public MongoHelper(){
}
public MongoClient getMongoClient( ){
MongoClient mongoClient = null;
try {
// 连接到 mongodb 服务
mongoClient = new MongoClient(ServerAddress, PORT);
System.out.println("Connect to mongodb successfully");
} catch (Exception e) {
System.err.println(e.getClass().getName() + ": " + e.getMessage());
}
return mongoClient;
}
public MongoDatabase getMongoDataBase(MongoClient mongoClient) {
MongoDatabase mongoDataBase = null;
try {
if (mongoClient != null) {
// 连接到数据库
mongoDataBase = mongoClient.getDatabase(DBName);
System.out.println("Connect to DataBase successfully");
} else {
throw new RuntimeException("MongoClient不能够为空");
}
} catch (Exception e) {
e.printStackTrace();
}
return mongoDataBase;
}
public void closeMongoClient(MongoDatabase mongoDataBase,MongoClient mongoClient ) {
if (mongoDataBase != null) {
mongoDataBase = null;
}
if (mongoClient != null) {
mongoClient.close();
}
System.out.println("CloseMongoClient successfully");
}
区别:
参考:http://blog.itpub.net/30341463/viewspace-1758585/
官方文档和源代码均建议使用MongoClient类,而且,在不久的将来,会废弃Mongo类。