如何使用node.js和mongoDB

Son*_*y D 5 mongodb node.js

我读 :

我真的很困惑.我应该如何使用node.js中的mongoDB?我是菜鸟,我的问题可能看起来很愚蠢.

var db = new db.MongoClient(new db.Server('localhost', 27017));
    db.open(function(err, dataBase) {
       //all code here?
       dataBase.close();
    });
Run Code Online (Sandbox Code Playgroud)

或者每当我需要来自db的东西时我都需要打电话:

MongoClient.connect("mongodb://localhost:27017/myDB", function(err, dataBase) {
    //all code here 
    dataBase.close();
});
Run Code Online (Sandbox Code Playgroud)

打开和连接有什么区别?我在手册中读到了打开:初始化和第二次连接.但究竟是什么意思呢?我假设两者都做同样的事情,但在另一方面,所以什么时候应该使用一个而不是另一个?

我还想问一下mongoClient需要4个套接字是正常的吗?我同时运行了两个myWEbServer,这里是图片:http://i43.tinypic.com/29mlr14.png

编辑:我想提一下这不是问题(相当怀疑:D),我的服务器工作得很完美.我问,因为我想知道我是否正确使用mongoDB驱动程序.现在/实际上我使用第一个选项,init mongo dirver在开头和内部加载放入所有代码.

Bra*_*ldi 2

我建议尝试他们提供的MongoDB 教程。我也有同样的情况,但这很好地解决了这个问题。另外,github上有一篇文章解释了数据库连接的基础知识。

简而言之,看起来你确实做对了。

MongoClient.connect("mongodb://localhost:27017/myDB", function(err, dataBase) {
    //all code here 
    var collection = dataBase.collection('users');
    var document1 = {'name':'John Doe'};
    collection.insert(document1, {w:1}, function(err,result){
        console.log(err);
    });
    dataBase.close();
});
Run Code Online (Sandbox Code Playgroud)