新手小白如何使用express项目跑通Mongodb数据库

创建express项目「已有直接跳第二步」

使用express脚手架创建express项目

步骤 1:安装 Express Generator

首先,确保全局安装了 Express Generator。你可以使用以下命令来安装:

复制代码
npm install -g express-generator

步骤 2:创建 Express 项目

在命令行中,执行以下命令来创建一个新的 Express 项目:

perl 复制代码
express my-express-app

这将会在当前目录下创建一个名为 my-express-app 的项目文件夹,并生成 Express 项目的基本文件结构。

步骤 3:安装依赖并启动应用

进入新创建的项目目录:

bash 复制代码
cd my-express-app

然后,安装项目所需的依赖:

复制代码
npm install

最后,启动 Express 应用:

sql 复制代码
npm start

现在,你的 Express 应用应该已经在默认端口(通常是3000)上运行了。你可以在浏览器中访问 **http://localhost:3000**,应该能看到 Express 的欢迎页面。 通过使用 Express 脚手架,你可以更快地创建一个 Express 项目,并且无需手动设置文件结构和配置。

连接Mongodb

  1. 根目录下创建config文件夹,并在config目录下创建db.config.js文件
javascript 复制代码
const mongoose = require("mongoose")

mongoose.set('strictQuery', true);
mongoose.connect(`mongodb://127.0.0.1:27017/表名称`) // 正常默认端口为27017

mongoose.connection.on("open", () => {
  // 在这里可以执行链接成功的操作
});

// 监听连接错误事件
mongoose.connection.on("error", (err) => {
  console.error("MongoDB 连接错误:", err);
});
  1. 创建并保存好db.config.js文件后,你还没有mongoose库

    npm install mongoose

  2. 然后你需要在bin/www目录下添加一行命令来引入db.config.js文件

javascript 复制代码
var app = require('../app');
var debug = require('debug')('my-express-demo:server');
var http = require('http');
// 在上方这几行下添加
require('../config/db.config.js') // 添加这一行命令
  1. 启动项目,默认启动命令为 npm run start,到这里你的数据库应该已经启动成功了!
  1. ※※※※※※※※※※※※※※※※※※※※※※※※※※

如果数据库没连接成功,则一定是本地数据库安装的问题。可以检查一下本地问题 如: (1) 检查mongod启动状态

出现successfully为启动成功 。反之为失败 或者 已经启动过了 ※ mac用户应该为data和log文件分配可支配权限

结尾

我通常会搭配一些特殊/明显的标签来验证自己的数据库连接成功

javascript 复制代码
const mongoose = require("mongoose")

const tableName = process.env.NODE_DATA === 'mock' ? 'mock' : 'jobpost' // 判断环境决定用哪张表
mongoose.set('strictQuery', true);
mongoose.connect(`mongodb://127.0.0.1:27017/${tableName}`)

mongoose.connection.on("open", () => {
  console.log('\x1b[33m%s\x1b[0m', '数据库 已成功连接!') 
  console.log('\x1b[33m%s\x1b[0m', `当前连接表:${tableName}`) 
  // 在这里可以执行其他操作
});

// 监听连接错误事件
mongoose.connection.on("error", (err) => {
  console.error("MongoDB 连接错误:", err);
});
相关推荐
xieter9 小时前
【技术精选】深入浅出现代前端渲染与性能优化实践指南 (2026-10-04)
前端·javascript
xieter9 小时前
【硬核实战】TypeScript Compiler API: Preserving Child Node Narrowing in Reusable Type Guards 🔧 (2026-10-03)
前端·javascript
xieter9 小时前
【硬核实战】React 19 useFormStatus Returning False? I Built a SubmitButton That Fixes It (2026-10-03)
前端·javascript
paopaokaka_luck11 小时前
非遗文物数字化小程序(AI非遗问答、ONNX图像识别、协同过滤推荐、ECharts数据分析、非遗知识浏览与互动、文创商城订单闭环、文化活动报名签到、社区交流)
javascript·spring boot·mysql·数据分析·echarts·mybatis
Highcharts.js11 小时前
图表开发实战总结| 7 条“黄金法则”与“性能铁律”
前端·javascript·vue.js·编辑器·时序数据库·highcharts
Helix25011 小时前
Electron、WebView 框架与 HTA 对比:桌面应用选型、安全性与现代替代方案
前端·javascript·electron·webview·vbscript·hta·本地html应用
Ikalus198811 小时前
三套 API 都告诉我成功了,浏览器一个字都没收到
javascript
Ikalus198811 小时前
计数器停在 0,我差点把一篇空摘要发出去
javascript
付威202312 小时前
Rust 所有权:看你的答对几道题?
javascript
西红柿炖牛腩35412 小时前
Three.js 模型体积优化:Draco/Meshopt 压缩与 DRACOLoader 配置的 4 个步骤
javascript·3d·性能优化