Mongoose是在node.js环境下对mongodb进行便捷操作的对象模型工具
mongoose安装
安装nodejs和mongodb之后 ,使用npm来安装mongoose
npm install mongoose --save
安装成功后,就可以通过 require('mongoose')
来使用
connect
connect
用于创建数据库连接
mongoose.connect(url(s), [options], [callback])
//url(s):数据库地址,可以是多个,以`,`隔开
//options:可选,配置参数
//callback:可选,回调
mongoose.connect('mongodb://数据库地址(包括端口号)/数据库名称')
指定用户连接
mongoose.connect('mongodb://用户名:密码@127.0.0.1:27017/数据库名称')
连接多个数据库
如果你的app中要连接多个数据库,只需要设置多个url以,隔开,同时设置mongos
为true
mongoose.connect('urlA,urlB,...', {
mongos : true
})
回调参数
mongoose.connect(url, options, function(error) {
});
执行下列代码后,控制台输出“连接成功”
var mongoose = require('mongoose');
mongoose.connect("mongodb://localhost/test", function(err) {
if(err){
console.log('连接失败');
}else{
console.log('连接成功');
}
});
如果开启鉴权控制,以用户名"u1",密码"123456"登录'db1'数据库。执行代码后,控制台输出“连接成功”
var mongoose = require('mongoose');
mongoose.connect("mongodb://u1:123456@localhost/db1", function(err) {
if(err){
console.log('连接失败');
}else{
console.log('连接成功');
}
});
简单实验
创建一个db.js
var mongoose = require('mongoose'),
DB_URL = 'mongodb://localhost:27017/mongoosesample';
/**
* 连接
*/
mongoose.connect(DB_URL);
/**
* 连接成功
*/
mongoose.connection.on('connected', function () {
console.log('Mongoose connection open to ' + DB_URL);
});
/**
* 连接异常
*/
mongoose.connection.on('error',function (err) {
console.log('Mongoose connection error: ' + err);
});
/**
* 连接断开
*/
mongoose.connection.on('disconnected', function () {
console.log('Mongoose connection disconnected');
});
调用node db.js执行就会看到输出如下图
disconnect()
mongoose.disconnect()
使用disconnect()方法可以断开连接
var mongoose = require('mongoose');
mongoose.connect("mongodb://u1:123456@localhost/db1", function(err) {
if(err){
console.log('连接失败');
}else{
console.log('连接成功');
}
});
setTimeout(function(){
mongoose.disconnect(function(){
console.log("断开连接");
})
}, 2000);