MongoDB

从Node.js连接到MongoDB数据库

智言 2016年03月29日 阅读(8880) 0

本章分享的是我们从node.js连接到MongoDB数据库,这个连接是通过MongoDB的一个驱动程序来实现的,这个驱动程序是官方支持的原生驱动程序,当然不知道后面会不会有更好的。

这个驱动程序就是先使用以下npm命令安装驱动程序:

npm install mongodb --save

项目的地址:http://mongodb.github.io/node-mongodb-native/

然后我们通过MongoClient连接到MongoDB,这整个过程的代码如下:

var MongoClient = require('mongodb').MongoClient,
 Server = require('mongodb').Server;



var server = new Server('localhost', 27017,
{
 poolSize: 5
}
);
var options = {
 retryMiliSeconds: 500
}
var client = new MongoClient(server, options);
client.open(function(err, client) {
 if (err) {
 console.log('连接失败');
 }else {
 var db = client.db('mytest');
 db.authenticate('liangke', 'sight2584', function(err, res){
 if (!err) {
 console.log('连接成功!');

 db.logout();
 console.log('数据库成功关闭!');
 }else {
 console.log('连接失败');
 }
 db.close();
 console.log('数据库连接关闭');
 });

 }
});

那么来解释一下上面的代码:

  1. 首先,我们导入需要连接的驱动程序,也就是上面代码的第一、二行;
  2. 然后我们创建了MongoClient对象的一个实例,该类的构造函数需要一个Server对象的作为第一个参数,而数据库的选项的对象作为第二个参数,即MongoClient(Server, options),这个Server对象中也存在相关的选项,而options也有几个相关的选项,详情查看官方文档。在例子中poolSize表示指定的服务器连接池使用的连接数量,默认值是5,这意味着可以有多达5个由MongoClient共享的连接连到该数据库;而retryMiliSeconds则表示指定重试连接时等待的毫秒数。默认值是5000)详情请移步http://www.asni.cn/1608
  3. 当我们创建了MongoClient后,就需要通过open(callback)方法打开到服务器的MongoDB数据库的连接。
  4. 这个callback(回调函数)接受两个参数,第一个参数表示连接失败,第二个参数表示连接成功传入的MongoClient对象,例如client.open(functions(err, client){…});
  5. 然后需要我们连接到我们指定的数据库,还需要用到client对象上的db(databasename)方法来创建数据库实例,如果连接的数据库需要用到身份验证,则还需要使用db.authenticate(username, password, callback)来验证到数据库。
  6. 最后就是你自己的发挥之地了。
  7. 当然,最后你别忘了注销数据库,使用db.logout()方法。
  8. 要关闭MongoDB的连接,你在客户端连接上调用close(),例如:client.close()

这整个过程就这样实现的,是不是很简单呢?快打开你的IDE动动小手吧!有任何的问题,请在本站下方留言哦!智言会在空闲时间段回复各位的。

智言

业务开发请联系QQ:5679361

评论 抢沙发

评论前必须登录!

 


如果你觉得本站内容对你有所帮助,比如提升你对编程方面的认识,你可以通过上面的二维码请博主喝杯咖啡,安好。

WEB前端开发部落(公众号:webapp_club)

群列表

前端初级学习群:初级Web前端学习群(后期为支付入群)
PHP初级学习群:PHP(MySQL)学习交流群
QQ群仅作为相关领域讨论平台,均提供高质量问题交流,禁止闲聊,无法接受的朋友请勿加群!
进群需要通过这里获取进群码才能进群哦!

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏