文章目录

  • 前言
  • 一、 在项目中安装Mongoose中间件
  • 二、 安装完毕,新建一个路由作为测试路由
    • 通过WebStorm软件,打开项目,编辑index.js文件:
  • 三、重启服务,浏览器查看:测试连接是否成功?
  • 四、浏览器效果,截图如下:
  • 五、查看 MongoDB 数据库
    • 通过`Studio3T可视化工具`,查看 MongoDB数据库的数据

前言

解决下列几个疑问:

  1. 如何连接MongoDB数据库?
  2. 如何通过Studio 3T应用程序查看数据库数据?

使用MongoDB作为数据库,首先需要使用一个中间件作为连接方式。
JavaScript提供了多个npm包作为中间连接的中间件。
为了更好的使用MongoDB,有开发者提供Mongoose和Mongoskin两种中间件。

Mongoose提供了一个直观的、基于模式的解决方案来建模应用程序数据,
所以,我选择使用Mongoose作为连接MongoDB的中间件。
它的优点:

  • 直观
  • 安装即用(包括内置类型转换、查询构建、业务逻辑挂钩、验证等等)

一、 在项目中安装Mongoose中间件

  1. 打开cmd命令,cd到目录vue_book\book_service\book_service:
    cd c:\users\administrator\javascript\vue_book\book_service\book_service

  2. 继续cmd命令,完成中间件的安装:
    npm install mongoose --save

cmd执行流,截图演示如下:


二、 安装完毕,新建一个路由作为测试路由

通过WebStorm软件,打开项目,编辑index.js文件:
  1. 编辑前:

    //express示例
    var express = require('express');
    //路由引入
    var router = express.Router();/* GET home page. */
    //定义路由
    router.get('/', function(req, res, next) {res.render('index', { title: 'Express' });
    });module.exports = router;
    
  2. 编辑后:

    //express示例
    var express = require('express');
    //路由引入
    var router = express.Router();
    //数据库引入
    var mongoose = require('mongoose');
    /* GET home page. */
    //定义路由
    router.get('/', function(req, res, next) {res.render('index', { title: 'Express' });
    });
    //定义路由二
    router.get('/mongooseTest', function (req, res, next) {mongoose.connect('mongodb://localhost/pets', { useMongoClient: true });mongoose.Promise = global.Promise;var Cat = mongoose.model('Cat', { name: String });var tom= new Cat({ name: 'Tom' });tom.save(function (err) {if (err) {console.log(err);}  else {console.log('success insert');}});res.send('数据库连接测试');
    });module.exports = router;

编辑好之后,保存上述代码文件。
通过上述代码对比,看得出来只是添加两处代码:数据库引入、定义路由二。


三、重启服务,浏览器查看:测试连接是否成功?

关闭cmd服务,然后重新cmd命令,重启服务器,进行测试。

CMD 重启命令如下:

  1. cd c:\Users\Administrator\JavaScript\vue_book\book_service\book_service
  2. set DEBUG= book_service & npm start
  3. 浏览器查看地址:http://localhost:3000/mongooseTest

cmd执行流,截图演示如下:


四、浏览器效果,截图如下:

谷歌浏览器 - 查看地址:http://localhost:3000/mongooseTest


五、查看 MongoDB 数据库

通过Studio3T可视化工具,查看 MongoDB数据库的数据
  • 双击打开PC端的Studio3T软件,鼠标右键 + 数据库,选择 “Refresh All”

更新前后,截图对比,如下:
更新之前截图

更新之后截图


以上就是关于“ 后端代码之服务端 - MongoDB数据库的连接、重启测试与(Studio3T)查看 - 讲解篇 ” 的全部内容。

后端代码之服务端 - MongoDB数据库的连接、重启测试与(Studio3T)查看 - 讲解篇相关推荐

  1. 后端代码之服务端 - 项目工程化创建目录启动服务 -讲解篇

    文章目录 前言 一. 目录创建 与 应用启动 A. 步骤如下: B. 具体cmd命令执行流,截图如下:(`部分无效,可忽略`) 二. 查看Express的欢迎页 1. 查看欢迎页的 浏览器url地址: ...

  2. VC++套接字、数据库、文件读写综合应用-客户端读取文件套接字接收服务端写入数据库

    开发一个应用:套接字连接:客户端读取文件:服务端接收后:写入数据库:模拟某些真实环境: 一 首先实现套接字收发 效果如上:代码见下: 二 服务端添加数据库操作代码 界面如下: 三 客户端读取文件 效果 ...

  3. 服务端大量无效ESTABLISHED连接,是人性泯灭还是道德沦丧

    2月末,微信群里突然收到监控告警,接口的无返回结果增多.nginx进行初步排查,发现请求内部服务A报了大量"连接失败".我登录到服务器上看了下,服务A上的连接数超过了63000,应 ...

  4. 开源netcore前后端分离,前端服务端渲染方案

    SPA单页面应用容器 开源地址: https://github.com/yuzd/Spa 功能介绍 前端应用开发完后打包后自助上传部署发布 配合服务端脚本(javascript)实现服务端业务逻辑编写 ...

  5. Socket代码实现服务端 和 客户端之间通信

    服务端代码 // Socket_connection.cpp : 此文件包含 "main" 函数.程序执行将在此处开始并结束. // #ifndef UNICODE #define ...

  6. js截屏代码_服务端浏览器截屏

    服务端浏览器截屏是结合 selenium + html2canvas 实现的通过在 Chrome 环境下生成图片. selenium是最广泛使用的开源Web UI自动化测试套件之一.本文中使用sele ...

  7. GrowingIO服务端开发面试、以及对测试开发、趣头条的一点个人看法。仅供参考

    1.简历是一位老哥推荐的,都是网易在实习的,他也知道我后来转Scala了,刚好这家公司是全Scala公司,所以就问了有没有兴趣,此时我在趣头条实习,干的是测试开发,所以也想试试. 我大概是去年2017 ...

  8. Python 套接字-判断socket服务端有没有关闭的方法实例演示,查看socket运行状态

    通过 getattr(socket, '_closed') 的返回值可以判断服务端的运行状态. True 是关闭状态,False 是运行中. 实例代码展示: import socketip = 'lo ...

  9. Mysql(1)——服务端与客户端建立连接

    Mysql不同于redis,它是一个关系型数据库,我们将数据库安装在linux系统上进行讲解. sudo apt-get install mysql-server命令可以在你的虚拟机上安装mysql服 ...

最新文章

  1. Python文件与目录操作
  2. MySQL数据库存入日期(java.sql.Date)数据,天数会少一天的问题
  3. linux php自动执行_linux下实现定时执行php脚本
  4. C语言实现TEA系列加解密算法
  5. dhcp failover linux,ISC dhcp failover的mclt参数很重要啊
  6. ssh协议是osi_计算机网络协议分析
  7. java读取propertiesshib,Java CommonUtils.constructServiceUrl方法代码示例
  8. VMware Vsphere 虚拟化
  9. unity visual effect Graph 1
  10. 系统测试计划编写(四)
  11. vue 直传视频到阿里云OSS
  12. 锻造互联网青铜时代 (转)
  13. SpyNote5.0 Client_APK逆向分析
  14. python爬虫入门教程04:招聘信息爬取
  15. 【TensorRT】TensorRT was linked against cudnn 8.6.0 but loaded cudnn 8.3.2
  16. 数字信号与模拟信号的区别
  17. appiumDemo(茄子医生)
  18. 线性规划python
  19. 为什么序列存在单位根是非平稳时间序列?
  20. 基于密码技术的应急广播安全解决方案

热门文章

  1. SAP 直接修改程序的方法
  2. “数据门”事件频发如何避免人为因素导致数据泄露?
  3. 应邀ITGeGe在线教育社区嵌入式基础开发讲师
  4. 关于C语言中运算符优先级的一次错误
  5. R12 - OM改进了对成本与收入确认的流程
  6. 算法题008 快速找出故障机器
  7. 今天工作中碰到一个clone的问题
  8. 关于北京皮纹智力测量与台湾皮纹测量智力测试争议的几点回应之二
  9. ORM Designer for Rails Demo
  10. mysql数据库加权随机_SQL:随机选择一行,但考虑到权重