在NodeJS

时间:2016-11-12 03:00:27

标签: javascript node.js mongodb blocking database

我是一名刚刚开始使用javascript的java程序员。

我在mlabs上创建了一个mongo数据库,现在我正在编写连接数据库的代码。

如何在节点中构建数据库代码,有没有办法以非阻塞方式连接到数据库?

1 个答案:

答案 0 :(得分:0)

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();
});

假设你想以json格式发送find()的结果作为响应,你会:

  • 连接数据库。
  • 在connect回调中,调用db.collection.find()
  • 在find()回调中,将结果传递给响应发送处理程序。 (快递get()中的res对象。

所以模式是:嵌套回调并通过调用响应对象/ MVC控制器/类似的东西来终止。