var settings = require('../settings'),
Db = require('mongodb').Db,
Connection = require('mongodb').Connection,
Server = require('mongodb').Server;
module.exports = new Db(settings.db, new Server(settings.host, settings.port), {safe: true});
我在这段代码中有几个不懂点。。
Db = require('mongodb').Db和Connection = require('mongodb').Connection和Server = require('mongodb').Server和new Db(settings.db, new Server(settings.host, settings.port), {safe: true})它们的作用是干什么的???求助。麻烦知道的给解答下。谢谢!
setting
的作用你明白了吧?现在说下面的。首先,这都是require一个叫
mongodb
的模块,这个模块是mongodb的Node.js 驱动,就是让你用Node.js连接Mongodb进行操作的。是导出一个Mongodb模块内置的Db方法,下面通过new 调用它就创建了一个数据库连接实例。
建立一个数据库连接你得指定一个名字和服务器端口吧,Server就是干这个的:
导出一个Server方法,通过new这个方法把主机和端口号传进去就可以新建一个服务器实例。
然后
{safe: true}
明显是一个配置参数,用来指定数据库的一些配置的。至于Connection,在这里并没用到,也没导出去,先忽略吧。
要是你说,为什么要这样调用,因为文档就是这样规定的http://mongodb.github.io/node-mongodb-native/2.1/api/Db.html
不过Mongodb另有一个更简单的连接方法,就是利用MongoClient,我前两天刚用了一下,可以参考下我的代码:
https://github.com/lijsh/node-blog/blob/master/lib/mongoConnect.js
或者官方说明:https://mongodb.github.io/node-mongodb-native/driver-articles/mongoclient.html
PS: 这是那个Node博客的教程吧,以前也看过,楼主加油。