express与mongodb之间的交互

express中使用mongodb

1. 安装mongoose模块

npm install mongoose -D 复制代码

2.在app.js中引入mongoose 模块

var mongoose = require('mongoose')复制代码

3.链接mongodb数据库

直接上代码:前端

mongoose.connect('mongodb://localhost:27017/user');
// user是数据库名称
mongoose.connection.on("connected", function () {
  console.log("数据库链接成功")
});

mongoose.connection.on("error", function () {
  console.log("数据库链接失败")
});

mongoose.connection.on("disconnected", function () {
  console.log("MongoDB connected disconnected.")
});

复制代码
链接成功后,会在终端打印:


mongodb插入数据

mongodb的基本语法在这里就不写了,这里使用的是mongodbCompass可视化工具mongodb

链接MongoDB Compass


默认端口就是 27017 直接链接就好了数据库

新建数据库

链接成功之后,默认的会有 2个数据库, admin local, 若是须要再添加新的数据库时,点击左下角的 + 按钮来新增数据库express


database name 数据库名  collection name 集合(表)名npm

注意: 集合(表)名后面要加s,具体缘由我也不是很清楚,若是不加s的话express没法获取到表里的数据(求大佬指点迷津)json


插入数据

进入到表里面后,点击 Insert Document 来插入数据到表里面bash



express获取mongodb数据

新建models文件

在根目录下新建一个目录取名为models,里面存放模具文件数据结构


构造数据结构


在model文件夹下,新建一个goods.js文件,该文件定义了在mongodb中的数据结构和类型,注意的是这里定义的数据类型要和mongdb中插入的数据类型一致并发

最后:app

module.exports = mongoose.model('goods', goodsList)复制代码

导出该model

在路由中获取mongodb数据


首先,引入以前定义好的 goodsList 的model ,而后经过 model.find()方法去数据库查找数据,找到后返回数据,并发送到前端

model.find()第一个参数是个对象,能够为前端传来的查询参数:


数据操做

  • .find(),做为读取、查找。

  • .create(),做为增长信息用。它是基于mongoose中的model的操做,传入一个json对象做为须要添加的内容,具体可自行查阅。

  • .update(),做为更新信息用。

  • .remove(),做为删除信息用。

获取参数的方式

get方法 用 req.query ;

post 方法用 req.body;

相关文章
相关标签/搜索