zoukankan      html  css  js  c++  java
  • Nodejs利用express框架写一套数据库增删改查接口

    nodejs 数据库 增删改查 接口 express

     

    nodejs Api接口
    订阅专栏
    1.首先创建一个Admin.js文件,引入模块,并实例化
    const express = require('express')
    const router = express.Router()
    1
    2
    2.重新创建一个Model.js文件,创建一个数据模型,规定参数,将构造好的模块抛出
    //数据模型
    const mongoose = require('mongoose')
    let UserSchema = new mongoose.Schema({
    name: { type: String, required: true },
    Gender: { type: String, required: true },
    phone: { type: String, required: true },
    mail:{ type: String,required:true},
    address:{ type: String,required:true},
    time:{ type: String,required:true}
    });
    // 将schema转化为数据模型
    let user = mongoose.model('UserAdmins', UserSchema);
    module.exports = user
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    3.将Model.js文件引入到Admin.js
    const userModel = require('../db/model/UserAdminModel') //数据模型
    1
    4.开始写接口
    4.1 增

    // 添加用户
    router.post('/addUser', (req, res) => {
    let { name, Gender, phone, mail, address, time } = req.body;
    userModel.insertMany({ name: name, Gender: Gender, phone: phone, mail: mail, address: address, time: time})
    .then((data) => {
    res.send({ err: 0, msg: 'add ok', data: null })
    })
    .catch((err) => {
    res.send({ err: -1, msg: err._message, data: null })
    })
    })
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    4.2 删

    // 删除用户
    router.post('/delUser',(req,res)=>{
    var _id = req.body._id;
    userModel.remove({_id:_id})
    .then((data) => {
    res.send({ err: 0, msg: 'del ok', data: null })
    })
    .catch((err) => {
    res.send({ err: -1, msg: err._message, data: null })
    })
    })
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    4.3 改

    // 修改信息
    router.post('/updataUser', (req, res) => {
    let _id = req.body._id;
    let { name, Gender, phone, mail, address, time } = req.body;
    userModel.updateOne({ _id: _id }, { name, Gender, phone, mail, address, time })
    .then((data) => {
    res.send({ err: 0, msg: 'updata ok', data: null })
    })
    .catch((err) => {
    res.send({ err: -1, msg: err._message, data: null })
    })
    })
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    4.4 查

    // 查询信息(查询全部)
    router.post('/getUser', (req, res) => {
    userModel.find()
    .then((data) => {
    res.send({ err: 0, msg: 'get ok', data: data })
    })
    .catch((err) => {
    res.send({ err: -1, msg: err._message, data: null })
    })
    })
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    //模糊查询 关键字查询
    router.post('/getUserByKw', (req, res) => {
    let { keyword } = req.body
    let reg = new RegExp(keyword)
    userModel.find({ $or: [{ name: { $regex: reg } }, { phone: { $regex: reg } }] })
    .then((data) => {
    console.log(data)
    res.send({ err: 0, msg: 'select ok', data: data })
    })
    .catch((err) => {
    res.send({ err: -1, msg: err._message, data: null })
    })
    })
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    //根据id 查询一条数据
    router.post('/getUserById', (req, res) => {
    let { _id } = req.body
    userModel.find({ _id })
    .then((data) => {
    res.send({ err: 0, msg: 'select ok', data: data })
    })
    .catch((err) => {
    res.send({ err: -1, msg: err._message, data: null })
    })
    })
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    将数据的增删改查接口抛出:
    module.exports = router
    1
    下边附上源码截图:
    开启服务器文件 server.js

    数据模型文件 Model.js

    接下来就是一个路由文件 Admin.js 接口文件
    将上边增删改查代码复制到 Admin.js文件然后 进行抛出,
    在server.js服务器文件中开启路由配置即可,一套完整的增删改查接口已经写好;(接口文件太长了,懒得截图了,抱歉 - - )

  • 相关阅读:
    高并发学习之使用RateLimiter实现令牌桶限流
    Tomcat学习之连接数设置
    SpringCloud学习之Zuul
    SpringCloud学习之Ribbon负载均衡
    SpringCloud学习之注册中心Eureka
    Spring源码学习之Spring IOC 容器源码分析(上)
    测试爬虫
    HTTP协议之chunk编码(分块传输编码
    转载: Qt 学习之路 2归档
    Python与机器人技术
  • 原文地址:https://www.cnblogs.com/onesea/p/15033493.html
Copyright © 2011-2022 走看看