我是一個剛剛啓動javascript的java程序員。在NodeJS中構造數據庫代碼
我在mlabs上創建了一個mongo數據庫,現在我正在編寫連接到數據庫的代碼。
數據庫代碼如何在節點中構造,是否有方法以非阻塞方式連接到數據庫?
我是一個剛剛啓動javascript的java程序員。在NodeJS中構造數據庫代碼
我在mlabs上創建了一個mongo數據庫,現在我正在編寫連接到數據庫的代碼。
數據庫代碼如何在節點中構造,是否有方法以非阻塞方式連接到數據庫?
Mongodb's official driver通過回調異步連接到數據庫。
自述:
var MongoClient = require('mongodb').MongoClient
, assert = require('assert');
// Connection URL
var url = 'mongodb://localhost:27017/myproject';
// Use connect method to connect to the Server
MongoClient.connect(url, function(err, db) {
assert.equal(null, err);
console.log("Connected correctly to server");
db.close();
});
說你想發送的find()結果作爲一個JSON格式的迴應,你會:
res
對象中的一個快速get())。所以模式是:嵌套的回調和終止與響應對象/ MVC控制器/類似的東西。
那麼每次我想要做數據庫操作時,都必須編寫MongoClient.connect? –
如果要保持連接處於打開狀態,可以使用其他位置的connect回調中的db對象。 –
它將保持可用,直到您用db.close()關閉它 –
我發現這個帖子,可能會有所幫助.. [http://stackoverflow.com/questions/22160709/non-blocking-mongodb-nodejs](http://stackoverflow.com/questions/22160709/non-blocking- mongodb-nodejs) – illcrx
驅動程序文檔http://mongodb.github.io/node-mongodb-native/2.2/是一個很好的閱讀。看起來代碼可以使用回調或ES6承諾(Node本身支持)來構建。 – traktor53