关于mongoose:web前端技术Mongoose详解

简介 之前咱们都是通过 shell 来实现对数据库的各种操作的,在开发中大部分时候咱们都须要通过程序来实现对数据库的操作。 而 Mongoose 就是一个让咱们能够通过 Node 来操作 MongoDB 的模块。 Mongoose 是一个对象文档模型(ODM)库,它对 Node 原生的 MongoDB 模块进行了进一步的优化封装,并提供了更多的性能。 在大多数状况下,它被用来把结构化的模式利用到一个 MongoDB 汇合,并提供了验证和类型转换等益处。 mongoose 的益处 能够为文档创立一个模式构造(Schema) 能够对模型中的对象/文档进行验证 数据能够通过类型转换转换为对象模型 能够应用中间件来利用业务逻辑挂钩 比 Node 原生的 MongoDB 驱动更容易 新的对象 mongoose 中为咱们提供了几个新的对象– Schema(模式对象) Schema 对象定义束缚了数据库中的文档构造– Model Model 对象作为汇合中的所有文档的示意,相当于 MongoDB 数据库中的汇合 collection– Document Document 示意汇合中的具体文档,相当于汇合中的一个具体的文档 通过 mongoose 连贯 MongoDB 应用 Mongoose 必须先装置 mongoose 包– npm install mongoose 加载 Mongoose– const mongoose = require("mongoose") 连贯数据库– mongoose.connect("mongodb://地址")– 地址例子:mongodb://127.0.0.1/mg_test 断开连接– mongoose.disconnect() ...

March 29, 2022 · 2 min · jiezi

关于mongoose:Mongoose在ExpressKoa-Egg中使用对比

Mongoose是什么?简略一句话概括:Mongoose是一套操作MongoDB数据库的接口。 开始在应用mongoose之前,须要当时装置好Node环境和MongoDB数据库。以上准备就绪咱们就能够了。 在Express Koa Egg中的应用在Express中首先初始化我的项目 npm init //初始化我的项目npm i xxx --save//装置各种依赖例如express nodemon ...目录如下 |-express| | -- db//启动mongodb数据库的dbpath门路| | --model//数据库中表的模型| | --node_modules| | --public//公共资源| | --route//路由| | --schema//模式类型| | --app.js//入口文件| | --package.json//配置文件装置mongoose。 npm install mongoose//装置mongoose在package.json {"dependencies": { "body-parser": "^1.19.0", "connect-multiparty": "^2.2.0", "express": "^4.17.1", "formidable": "^1.2.2", "http-proxy-middleware": "^2.0.0", "mongoose": "^5.12.13", "multer": "^1.4.2", "multiparty": "^4.2.2", "nodemon": "^2.0.7", "xlsx": "^0.17.4"}}在app.js中引入依赖 const express=require("express");//引入expressconst mongoose = require('mongoose');//引入mongooseconst app=express();const port=8080;//端口号mongoose.connect('mongodb://localhost:27017/Management',{useNewUrlParser:true,useUnifiedTopology:true},function(err){ if(err){ console.log('链接失败'); }else{ console.log('链接胜利'); }});//链接数据库名Mangagement端口号27017,勾销数据库启动正告,app.listen(port,()=>{ console.log(`Example app listening at http://localhost:${port}`) })开启数据库在装置mongodb/bin目录执行cdm执行如下指令 ...

March 1, 2022 · 4 min · jiezi

关于mongoose:用expressmongoose快速开发API接口

1.初始化我的项目npm init -y 2.应用Express框架创立服务器,用mongoose连贯数据库,cors解决跨域npm i express mongoose cors 3.新建一个文件夹http_serve,目录构造 3.1 index.js文件,启动node服务 const express = require('express')const cors = require('cors')const app = express()//解决跨域app.use(cors())//express内置了post参数解析app.use(express.urlencoded({ extended: false }))const apiRouter = require('./router')app.use(apiRouter)app.listen(3008, function () { console.log('app is runing at port 3008');})3.2 db.js 连贯mongoDB const mongoose = require('mongoose')const IP = 'localhost'const PORT = 27017const DB_NAME = 'org'//连贯mongoose.connect(`mongodb://${IP}:${PORT}/${DB_NAME}`, { useNewUrlParser: true})//连贯胜利mongoose.connection.on('connected', () => { console.log('Mongoose connection success')})//连贯异样mongoose.connection.on('error', (err) => { console.log('Mongoose connection error:' + err)})//连贯胜利mongoose.connection.on('disconnected', () => { console.log('Mongoose connection disconnected')})module.exports = mongoose3.3 router.js 定义接口以及办法 ...

January 26, 2022 · 2 min · jiezi

关于mongoose:mongoose中new-schema啥意思

Mongoose 是一个让咱们能够通过Node来操作MongoDB数据库的一个模块Mongoose 是一个对象文档模型(ODM)库,它是对Node原生的MongoDB模块进行了进一步的优化封装大多数状况下,他被用来把结构化的模式利用到一个MongoDB汇合,并提供了验证和类型装换等益处基于MongoDB驱动,通过关系型数据库的思维来实现非关系型数据库在 Mongoose 中,所有数据都由一个 Schema 开始创立。每一个 schema 都映射到一个 Mongodb 的汇合(collection),并定义了该汇合(collection)中的文档(document)的模式。定义一个Scheme(模式构造/束缚)const mongoose = require('mongoose');const Schema = mongoose.Schema; const UserScehma = new Schema({ name: { type: String, required: true }, createTime: { type: Date, default: Date.now }, favoriteIds: [String] sex: String, avatar: String, vip: Boolean,})Schema类型有: StringNumberDateBufferBooleanMixedObjectIdArrayschema传参中每一个键名就会映射为一个schema类 实例办法 映射var userModel = mongoose.model(‘User’,UserScehma)参数:1.要映射的汇合名2.创立的束缚(schema对象)通过映射返回的值对数据库进行增、删、改、查 mongoose批改数据库办法:https://blog.csdn.net/qq_4032...

June 2, 2021 · 1 min · jiezi