首先安装mongodb 

  1. npm i mongodb --save

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

  1. var MongoClient=require('mongodb').MongoClient;
  2.  
  3. var DbUrl='mongodb://localhost:27017/xxx'; /*连接数据库*/
  4.  
  5. function __connectDb(callback){
  6. MongoClient.connect(DbUrl,function(err,db){
  7. if(err){
  8. console.log('数据库连接失败');
  9. return;
  10. }
  11. //增加 修改 删除
  12. callback(db);
  13. })
  14.  
  15. }
  16.  
  17. //数据库查找
  18. /*
  19. Db.find('user',{},function(err,data){
  20. data数据
  21. })
  22. */
  23.  
  24. exports.find=function(collectionname,json,callback){
  25. __connectDb(function(db){
  26. var result=db.collection(collectionname).find(json);
  27. result.toArray(function(error,data){
  28. db.close();/*关闭数据库连接*/
  29. callback(error,data);/*拿到数据执行回调函数*/
  30. })
  31. })
  32. }
  33.  
  34. //增加数据
  35. exports.insert=function(collectionname,json,callback){
  36. __connectDb(function(db){
  37. db.collection(collectionname).insertOne(json,function(error,data){
  38. callback(error,data);
  39. })
  40. })
  41. }
  42.  
  43. //增加数据
  44. exports.update=function(collectionname,json1,json2,callback){
  45. __connectDb(function(db){
  46. db.collection(collectionname).updateOne(json1,{$set:json2},function(error,data){
  47. callback(error,data);
  48. })
  49. })
  50. }
  51.  
  52. //删除数据
  53. exports.deleteOne=function(collectionname,json,callback){
  54. __connectDb(function(db){
  55. db.collection(collectionname).deleteOne(json,function(error,data){
  56. callback(error,data);
  57. })
  58. })
  59. }

使用——引入

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

简单封装mongodb的更多相关文章

  1. Golang 对MongoDB的操作简单封装

    使用MongoDB的Go驱动库 mgo,对MongoDB的操作做一下简单封装 初始化 操作没有用户权限的MongoDB var globalS *mgo.Session func init() { s ...

  2. MongoDB Python官方驱动 PyMongo 的简单封装

    最近,需要使用 Python 对 MongodB 做一些简单的操作,不想使用各种繁重的框架.出于可重用性的考虑,想对 MongoDB Python 官方驱动 PyMongo 做下简单封装,百度一如既往 ...

  3. 孤荷凌寒自学python第六十六天学习mongoDB的基本操作并进行简单封装5

    孤荷凌寒自学python第六十六天学习mongoDB的基本操作并进行简单封装5并学习权限设置 (完整学习过程屏幕记录视频地址在文末) 今天是学习mongoDB数据库的第十二天. 今天继续学习mongo ...

  4. 孤荷凌寒自学python第六十五天学习mongoDB的基本操作并进行简单封装4

    孤荷凌寒自学python第六十五天学习mongoDB的基本操作并进行简单封装4 (完整学习过程屏幕记录视频地址在文末) 今天是学习mongoDB数据库的第十一天. 今天继续学习mongoDB的简单操作 ...

  5. 孤荷凌寒自学python第六十四天学习mongoDB的基本操作并进行简单封装3

    孤荷凌寒自学python第六十四天学习mongoDB的基本操作并进行简单封装3 (完整学习过程屏幕记录视频地址在文末) 今天是学习mongoDB数据库的第十天. 今天继续学习mongoDB的简单操作, ...

  6. 孤荷凌寒自学python第六十三天学习mongoDB的基本操作并进行简单封装2

    孤荷凌寒自学python第六十三天学习mongoDB的基本操作并进行简单封装2 (完整学习过程屏幕记录视频地址在文末) 今天是学习mongoDB数据库的第九天. 今天继续学习mongoDB的简单操作, ...

  7. 孤荷凌寒自学python第六十二天学习mongoDB的基本操作并进行简单封装1

    孤荷凌寒自学python第六十二天学习mongoDB的基本操作并进行简单封装1 (完整学习过程屏幕记录视频地址在文末) 今天是学习mongoDB数据库的第八天. 今天开始学习mongoDB的简单操作, ...

  8. 转】upstart封装mongodb应用为系统服务

    原博文出自于: http://blog.fens.me/category/%E6%95%B0%E6%8D%AE%E5%BA%93/page/4/ 感谢! upstart封装mongodb应用为系统服务 ...

  9. Android AsyncTask 深度理解、简单封装、任务队列分析、自定义线程池

    前言:由于最近在做SDK的功能,需要设计线程池.看了很多资料不知道从何开始着手,突然发现了AsyncTask有对线程池的封装,so,就拿它开刀,本文将从AsyncTask的基本用法,到简单的封装,再到 ...

随机推荐

  1. 排序算法之快速排序的思想以及Java实现

    1 基本思想 快速排序是在冒泡排序的基础上改进而来的,它是基于分治的思想.通过一趟排序将要排序的数据分割成独立的两部分,其中一部分的所有数据都比另外一部分的所有数据都要小,然后再按此方法对这两部分数据 ...

  2. celery 定时任务

    用celery定时任务,定时删除文件夹 tasks.py from celery import Celery import os import shutil app = Celery('demo') ...

  3. docker容器持久化卷讲解

    docker容器自身存储数据效率比较低,因此我们为了提高磁盘IO的性能等,需要在容器中挂载一个外部存储设备.关于讲解大致如下: Docker中的数据可以存储在类似于虚拟机磁盘的介质中,在Docker中 ...

  4. 一张图看Docker

  5. js模块化规范—commonjs

    commonjs规范说明 每个js文件都可当作一个模块 在服务器端: 模块的加载是运行时同步加载的(不会阻塞,等待时间回比较长).在浏览器端: 模块需要提前编译打包处理 commonjs规范基本语法 ...

  6. maven 经常使用命令

    版权声明:本文为博主原创文章,未经博主同意不得转载. 安金龙 的博客. https://blog.csdn.net/smile0198/article/details/25567541 刚開始用.记录 ...

  7. Tesseract-OCR识别

    参考 https://studygolang.com/topics/4527/comment/13217 安装版Windows下链接: https://digi.bib.uni-mannheim.de ...

  8. C++编写 动态链接库dll 和 调用dll

    参考:https://jingyan.baidu.com/article/ff42efa92c49cfc19e2202fd.html 和htps://jingyan.baidu.com/article ...

  9. 【转】具透 | 你可能不知道,iOS 10 有一个中国「特供」的联网权限功能

    9 月底,苹果正式在北京成立了苹果中国研发中心.近几年,我们也在每年更新的 iOS 系统中不断看到,苹果对中国市场的关照.从早前的九宫格输入法,到最近的骚扰电话拦截,都照顾了国内用户的需求. 在 iO ...

  10. 09 python初学 (字符串)

    # 重复输出字符串 print('hello' * 2) # >>>hellohello # 字符串切片操作,最重要的!!!! print('hello'[2:]) # >&g ...