1,  在schema 目录创建 users.js 文件,通过 mongoose 模块来操作数据库

2,  在定义 users 表结构之前,需要让应用支持或连接数据库 。 所以要在应用的入口文件 app.js 中 进行数据库的重放(即加载数据库)

3 ,    var mongoose = require('mongoose')

4 ,    mongoose.connect()  //连接数据库  。

5  ,   在连接之前需要开启数据库 ,

 (1)    cmd 进入  E:\MongoDB\Server\4.0\bin    目录下  E:\MongoDB\Server\4.0\bin> mongod       (执行前需要设置参数,详情看1.5.2,1.5.3)

(2) 指定数据库存储路径 : 项目的数据库目录  。

(3)    指定端口

 (4)  执行    =》    PS E:\MongoDB\Server\4.0\bin> mongod --dbpath=D:\node\blog\blog-2\db --port=27018

(5)     也可以通过可视化工具 robomongodb 来连接 mongodb

(6)     文档 : https://mongoosejs.com/docs/connections.html

一, 入口文件 app.js

mongoose.connect('mongodb://localhost:27018/blog-2', {useNewUrlParser: true},(err)=>{  // blog-2 为项目目录的名称
  if(err) {
    console.log('数据库连接失败')
  }else{
    console.log('数据库连接成功')
    app.listen(3000)
  }
}) 
 
二, 定义数据库表文件  /schema/users.js  
 
var mongoose = require('mongoose')
/**
*  创建表结构
*/
module.exports = new mongoose.Schema({
  username:String,
  password:String
})
 
三, 定义模型类文件,用于对用户的增删改查  /models/User.js    ( 模型类的使用 :https://mongoosejs.com/docs/models.html )
 
var mongoose = require('mongoose')
userSchema = require('../schemas/users')
/**
* 创建模型
*/
module.exports= mongoose.model('User',userSchema)
 
 
——————————————————————————
 
补充:
 

1、先安装mongoose
npm install mongoose -D

2、启动mongodb
cd 你的mongodb安装目录/bin
dbpath后面跟的路径是你数据库 数据文件存放位置,自己随便存一个地方
命令: mongod --dbpath=D:\node\blog\blog-2\db --port=27018

3、在schemas中定义各个模块的schema数据库表结构,数据库表结构定义好后,导出表结构
const mongoose = require('mongoose')
const Schema = mongoose.Schema

// 用户表的数据结构
const user = new Schema({
  // 用户名
  username: String,
  // 密码
  password: String
})

module.exports = user

4、在models中定义各自的model操作方法,当然需要再modals相应的模块中引入 schema
const mongoose = require('mongoose')
const usersSchema = require('../schemas/user')

// 通过 mongoose创建模型
const UserModel = mongoose.model('User', usersSchema)

// 将这个模型导出 model上是可操作数据的 CURD
module.exports = UserModel

5,记得在app.js中,就是后台 express或者你其他框架或者原生node的入口文件中,连接数据库
const mongoose = require('mongoose')
const db = mongoose.connect('mongodb://localhost:27017/huaxia', (err)=> {
if(err) {
console.log('连接失败')
return
}
console.log('连接成功')
})
 

5 ~ express ~ 连接数据库的更多相关文章

  1. express 连接数据库

    (1)创建项目 ,项目名cntMongodb express -e cntMongodbcd cntMonfodbnpm installnpm install mongoose --save //安装 ...

  2. express连接数据库 读取表

    connection 连接数据库    connection.query 查询表   1.依赖 const mysql = require('mysql'); 连接数据库代码 var connecti ...

  3. mongoDB3.0版本使用express读取数据

    使用express连接数据库操作 var express = require('express'); var app = express(); var MongoClient = require('m ...

  4. 基于 Sequelize.js + Express.js 开发一套 Web 后端服务器

    什么是 Sequelize 我们知道 Web 应用开发中的 Web 后端开发一般都是 Java.Python.ASP.NET 等语言.十年前,Node.js 的出现使得原本仅限于运行在浏览器中的 Ja ...

  5. 前端笔记之NodeJS(四)MongoDB数据库&Mongoose&自制接口&MVC架构思想|实战

    一.MongoDB数据库 1.1 NoSQL简介 随着互联网web2.0网站的兴起,传统的SQL数据库(关系数据库)在应付web2.0网站,特别是超大规模和高并发的SNS(social network ...

  6. 山西WebGIS项目总结

    有一段时间没写blog了,说实话,最近的心态一直在变化,看了一部日剧,回想了这一年所学所见,感觉生活目标变了. 做国土项目这段时间不是很忙,由于数据一直给不到位,时间拖得很久,所以在这期间也在继续学习 ...

  7. Node-Blog整套前后端学习记录

    Node-Blog 后端使用node写的一个一整套的博客系统 #### 主要功能 登录 注册 发表文章 编辑/删除文章 添加/删除/编辑文章分类 账号的管理 评论功能 ... 所用技术 node ex ...

  8. bash: express: command not found及vue连接数据库调接口

    今天在使用express -e . 的命令时,cmd给我报了一段不识别的错误: bash: express: command not found ,在网上查了一下,有人指出是express4的版本将命 ...

  9. node连接数据库(express+mysql)

    操作是在ubuntu系统的下环境,简单记录一下过程. 首先用apt-get安装数据库,键入命令 sudo apt-get install mysql-server , 一路回车,然后在一个界面设置一下 ...

随机推荐

  1. ajax 'Content-Type': 'multipart/form-data' ->文件上传

    'Content-Type': 'multipart/form-data' :指定传输数据为二进制数据,例如图片.mp3.文件

  2. 洛谷 P1094 纪念品分类

    刚开始看到这题就确定这题最好先要排序 第一个想法是排好序后先让第一个和从倒数第一个开始相加和如果就  <= w,那么用n除以2或者再加一得出答案,然后发现随便 当w = 110  n = 5序列 ...

  3. 「JLOI2014」聪明的燕姿

    传送门 Luogu 解题思路 很容易想到直接构造合法的数,但是这显然是会T飞的. 我们需要考虑这样一件事: 对于一个数 \(n\),对其进行质因数分解: \[n=\sum_{i=1}^x p_i^{c ...

  4. 防火墙、WAF、IPS、IDS都是什么

    防火墙 (Firewall) 别名防护墙,于1993发明并引入国际互联网. 他是一项信息安全的防护系统,依照特定的规则,允许或是限制传输的数据通过.在网络中,所谓的防火墙是指一种将内网和外网分开的方法 ...

  5. sklearn中调用PCA算法

    sklearn中调用PCA算法 PCA算法是一种数据降维的方法,它可以对于数据进行维度降低,实现提高数据计算和训练的效率,而不丢失数据的重要信息,其sklearn中调用PCA算法的具体操作和代码如下所 ...

  6. 今日份学习: Spring中使用AOP并实现redis缓存?

    笔记 在Spring中如何使用AOP? Spring是如何切换JDK动态代理和CGLIB的? spring.aop.proxy-target-class=true (在下方第二个链接中,原生doc中提 ...

  7. CentOS LVM 卷在线扩容

    场景: vmware 虚拟机,装了CentOS  ,更改了虚拟机磁盘的大小:从200G,扩展到320G,可以参考本文写了步骤. 1. 在线扫描虚拟机SCSI新增的容量 # for i in `find ...

  8. elasticsearch-java客户端测试

    1.环境准备 (1)添加依赖 <dependency> <groupId>org.elasticsearch.client</groupId> <artifa ...

  9. 官方关于Dialog的介绍

    将Activity显示成Dialog的形式: Tip: If you want a custom dialog, you can instead display an Activity as a di ...

  10. uboot的环境变量

    https://www.cnblogs.com/biaohc/p/6398515.html uboot 环境变量实现原理: 首先我们先要搞清楚uboot中环境变量的作用,uboot中环境变量的作用就是 ...