我是Mongo的新手,并且想知道在访问集合方面会有什么最佳实践。最好的解释方法是通过sudo代码:
public class DBManager {
private MongoClient mongoClient;
private DBCollection collection;
public DBManager() {
mongoClient = new MongoClient( "127.0.0.1", 27017);
collection = mongoClient.getDB( "DB" ).getCollection("collection");
}
public String add(String item) {
if(collection!= null) {
ObjectId id = new ObjectId();
BasicDBObject insert= new BasicDBObject("_id", id)
.append("item", item)
collection.insert(insertRepo);
return id.toHexString();
}
return null;
}
public boolean remove(String id) {
if(collection!= null) {
ObjectId id = new ObjectId(id);
DBObject dbObject = collection.findOne(objectId);
collection.remove(dbObject);
}
return false;
}
}
当你做“getCollection”时,我并不清楚幕后发生的事情。初始化时只执行一次是一种好习惯,还是应该只是在构造函数中设置MongoClient然后获取每个请求的集合?
答案 0 :(得分:1)
在构造函数中执行它很好。将DBManager
定义为singleton
会更好,以便在启动期间初始化集合