简单封装mongodb

 

首先安装mongodb 

npm i mongodb --save

简单封装,在modules目录下新建db.js

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

var DbUrl='mongodb://localhost:27017/xxx';  /*连接数据库*/

function  __connectDb(callback){
    MongoClient.connect(DbUrl,function(err,db){
        if(err){
            console.log('数据库连接失败');
            return;
        }
        //增加 修改 删除
          callback(db);
    })

}

//数据库查找
/*
 Db.find('user',{},function(err,data){
    data数据
})
 */
 
exports.find=function(collectionname,json,callback){
    __connectDb(function(db){
        var result=db.collection(collectionname).find(json);
        result.toArray(function(error,data){
            db.close();/*关闭数据库连接*/
            callback(error,data);/*拿到数据执行回调函数*/
        })
    })
}

//增加数据
exports.insert=function(collectionname,json,callback){
    __connectDb(function(db){
        db.collection(collectionname).insertOne(json,function(error,data){
            callback(error,data);
        })
    })
}

//增加数据
exports.update=function(collectionname,json1,json2,callback){
    __connectDb(function(db){
        db.collection(collectionname).updateOne(json1,{$set:json2},function(error,data){
            callback(error,data);
        })
    })
}

//删除数据
exports.deleteOne=function(collectionname,json,callback){
    __connectDb(function(db){
        db.collection(collectionname).deleteOne(json,function(error,data){
            callback(error,data);
        })
    })
}

使用——引入

var DB=require('./modules/db.js');
var username=req.body.username;
var password=md5(req.body.password);  /*要对用户输入的密码加密*/
//1.获取数据
//2.连接数据库查询数据
DB.find('user',{
    username:username,
    password:password
},function(err,data){
    if(data.length>0){
        console.log('登录成功');
        //保存用户信息
        req.session.userinfo=data[0];
        res.redirect('/xxx');  /*登录成功跳转*/
    }else{
        console.log('登录失败');
        res.send("<script>alert('登录失败');location.href='/login'</script>");
    }
})

 

posted @ 2018-08-05 15:23  EthanCheung  阅读(180)  评论(0编辑  收藏  举报