介绍
- mongoose可以通过node.js来对mongo数据库进行操作
- mongoose是一个对象文档模型库,对mongoDB模块进行了优化封装,提供了更多的功能
- 用于把机构化的模式应用到一个mongoDB集合中,并且提供了验证与类型转换
好处
- 为文档创建一个模式结构(Schema)
- 对模型中的对象或者文档进行验证
- 数据可以通过类型转换为对象模型
- 可以使用中间件来应用业务逻辑挂钩
- 比Node原生的mongoDB驱动更容易
- 在mongoose中提供了三个新的对象,分别是Schema、Model、Document
- Schema:模式对象,定义了约束数据库中的文档结构
- Model:集合中所有文档的表示,相当于mongoDB中的集合collection
- Document:表示集合中的具体文档
使用步骤
npm install mongoose --save
const mongoose = require('mongoose')
mongoose.connect("mongodb://127.0.0.1/mongoose_test", {useNewUrlParser: true, useUnifiedTopology: true})
mongoose.disconnect()
- 监听数据库连接状态,使用connection进行监听状态的改变
mongoose.connection.once("open", () => {
console.log("数据库连接成功!!")
})
mongoose.connection.once("close", () => {
console.log("数据库断开成功!!")
})
创建一个集合students,向其中添加数据
let Schema = mongoose.Schema
let stuSchema = new Schema({
name: String,
age: Number,
gender: {
type: String,
default: "female"
},
address: String
})
let stuModel = mongoose.model("students", stuSchema)
stuModel.create({
name: "孙悟空",
age: 20,
gender: "male",
address: "花果山"
}, (err) => {
if (!err) {
console.log("插入成功")
}
})