2016-08-11 37 views
2

因此,我對mongodb非常新,我希望在我的應用程序中使用它。現在我HATE多餘的代碼,但閱讀如何使用mongodb與node.js似乎有一個模式,你總是必須連接之前進行任何CRUD操作。從官方文件mongodb是否需要連接每個操作

實施例:

MongoClient.connect(url, function(err, db) { 
    assert.equal(null, err); 
    insertDocument(db, function() { 
     db.close(); 
    }); 
}); 

我的問題是。是否有可能使中間件保持連接打開,所以你只需要撥打insertDocument(在上面的例子中)?

+0

更好地使用mongoose.connect()並將其保存在配置文件中。你可以在任何地方使用 – chirag

回答

3

是的,當然,只要保持db變量周圍,直到你不再需要它不再做 - 然後調用close()

var mdb; 
MongoClient.connect(url, function(err, db) { 
    assert.equal(null, err); 
    mdb = db; 
    insertDocument(mdb, function() { 
     // ... 
    }); 
}); 

// do other stuff with mdb 
1

您還可以查看到你所說的中間件使用Mongoose

連接只打開一次(在全局範圍內),然後您可以在整個應用程序中使用它。

相關問題