mongoose的介绍,连接数据库

Mongoose 是一个基于 Node.js 的 MongoDB ODM(Object Data Modeling)库,用于在 MongoDB 和 Node.js 应用之间提供结构化的模型层,帮助你更优雅、安全地操作数据库。


🧾 一、Mongoose 简介

  • 📦 功能

    • 定义数据模型(Schema)
    • 提供强大的验证机制
    • 支持中间件(middleware)、钩子(hooks)
    • 提供简洁的增删查改(CRUD)接口
  • 🧠 适用场景

    • 使用 Node.js 开发需要与 MongoDB 交互的项目
    • 希望对 MongoDB 文档结构进行更严格控制时

🔗 二、使用 Mongoose 连接数据库

1. 安装 mongoose

复制代码
npm install mongoose

2. 连接 MongoDB(最基本示例)

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

mongoose.connect('mongodb://localhost:27017/myDatabase', {
  useNewUrlParser: true,
  useUnifiedTopology: true,
})
.then(() => {
  console.log('✅ MongoDB 连接成功')
})
.catch((err) => {
  console.error('❌ MongoDB 连接失败:', err)
})

mongodb://localhost:27017/myDatabase 中:

  • localhost 是主机地址
  • 27017 是默认端口
  • myDatabase 是数据库名,不存在时会在插入数据时自动创建

🏗️ 三、Mongoose 基础结构示意

复制代码
// 1. 定义 schema(数据结构)
const userSchema = new mongoose.Schema({
  name: String,
  age: Number,
  email: String
})

// 2. 创建模型(Model)=> 会映射为 MongoDB 中的集合
const User = mongoose.model('User', userSchema)

// 3. 使用模型进行操作
User.create({ name: 'Tom', age: 20, email: 'tom@example.com' })

相关推荐
计算机毕设VX:Fegn089526 分钟前
计算机毕业设计|基于springboot + vue医院设备管理系统(源码+数据库+文档)
数据库·vue.js·spring boot·后端·课程设计
Mr__Miss29 分钟前
保持redis和数据库一致性(双写一致性)
数据库·redis·spring
Knight_AL2 小时前
Spring 事务传播行为 + 事务失效原因 + 传播行为为什么不用其他模式
数据库·sql·spring
倔强的石头_2 小时前
时序数据时代的“存储与分析困局”解析及金仓解决方案
数据库
计算机毕设VX:Fegn08952 小时前
计算机毕业设计|基于springboot + vue小型房屋租赁系统(源码+数据库+文档)
数据库·vue.js·spring boot·后端·课程设计
倔强的石头_3 小时前
场景化落地指南——金仓时序数据库在关键行业的应用实践
数据库
SelectDB3 小时前
驾驭 CPU 与编译器:Apache Doris 实现极致性能的底层逻辑
运维·数据库·apache
zbguolei3 小时前
MySQL根据身份证号码计算出生日期和年龄
数据库·mysql
马克学长4 小时前
SSM校园图书借阅服务系统jd2z8(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面
数据库·图书管理系统·ssm 框架·ssm 校园图书借阅系统
软件派4 小时前
高斯数据库使用心得——从性能优化到行业实践的深度解析
数据库·oracle