如何使用Node.js中的MongoDB进行简单的数据库操作?

2026-04-06 19:331阅读0评论SEO问题
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计611个文字,预计阅读时间需要3分钟。

如何使用Node.js中的MongoDB进行简单的数据库操作?

使用Koa2框架,基于注册登录功能简单介绍了MongoDB的使用。

一、目录结构

1.在mongo目录下有一个app.js文件(入口文件)

2.views是模板文件目录

3.p...

二、app.js文件内容

javascript// app.js

如何使用Node.js中的MongoDB进行简单的数据库操作?

const Koa=require('koa');const Router=require('koa-router');const mongoose=require('mongoose');

const app=new Koa();const router=new Router();

// 连接MongoDBmongoose.connect('mongodb://localhost:27017/myapp', { useNewUrlParser: true, useUnifiedTopology: true });

// 路由配置router.get('/', async ctx=> { ctx.body='Hello, world!';});

app.use(router.routes()).use(router.allowedMethods());

app.listen(3000, ()=> { console.log('Server is running on http://localhost:3000');});

gistfile1.txt

使用koa2框架,基于注册登录功能简单的介绍了mongodb的使用 一、首先我们先看下目录结构 目录结构 1、在mongo目录下有个app.js文件(入口文件) 2、然后views是模板文件目录 3、package.json 这个就不必多说了大家都了解 二、在node中使用mongodb,首先要先安装好nodejs和mongodb,window下启动mongodb可能会遇到一些问题,可以参考:启动mongodb遇到的一些问题三、然后安装各种必须的依赖,下面是app.js的代码,注释已经详细(因为是练习,所以都放在一个文件下),全部代码参考github:代码, //使用koa2 const Koa = require('koa'); //路径处理 var path = require('path'); //接收请求的数据处理 const bodyParser = require('koa-bodyparser'); //路由处理 const Router = require('koa-router'); //加载模板 var views = require('koa-views') //使用之后就可以直接使用了 const app = new Koa(); const router = new Router(); //配置mongodb数据库相关的内容 const mongoose = require('mongoose'); mongoose.connect('mongodb://localhost/mongo'); //创建模型 var User = mongoose.model('User',{username:String,password:String}); // 配置服务端模板渲染引擎中间件 使用ejs模板 app.use(views(path.join(__dirname, './views'), { map: { html:'ejs' } })) //数据处理模块 app.use(bodyParser()) //首页 router.get('/',async (ctx,next)=>{ ctx.body = 'hello' }) // '/login' get请求去到login页面 router.get('/login',async (ctx,next)=>{ await ctx.render('login') }) //注册页 router.get('/register',async (ctx,next)=>{ await ctx.render('register') }) //注册传过来的数据 router.post('/register',async (ctx,next)=>{ const{username,password} = ctx.request.body //添加数据 if(!username || password){ ctx.body = { code:1, msg:'用户名或者密码不能为空' } } var user = new User({ username: username, password:password }); await user.save(function(err, res) { // 如果错误,打印错误信息 if (err){ ctx.body = { code:1, msg:'err' } } ctx.body = { code:2, msg:'ok' } }) }) //数据查询 router.post('/login',async (ctx,next)=>{ const{username,password} = ctx.request.body await User. find({ username: username }). where('password').equals(password). exec((err,res)=>{ if(err){ console.log(err); }else{ if(res){ ctx.body = { code:2, data:{ username:res[0].username }, msg:'ok' } }else{ ctx.body = { code:1, msg:'err' } } } }); }) //要使用router.routes() 路由才会有效果 app.use(router.routes()) app.listen(3000) 博客地址:yxlblog.com

本文共计611个文字,预计阅读时间需要3分钟。

如何使用Node.js中的MongoDB进行简单的数据库操作?

使用Koa2框架,基于注册登录功能简单介绍了MongoDB的使用。

一、目录结构

1.在mongo目录下有一个app.js文件(入口文件)

2.views是模板文件目录

3.p...

二、app.js文件内容

javascript// app.js

如何使用Node.js中的MongoDB进行简单的数据库操作?

const Koa=require('koa');const Router=require('koa-router');const mongoose=require('mongoose');

const app=new Koa();const router=new Router();

// 连接MongoDBmongoose.connect('mongodb://localhost:27017/myapp', { useNewUrlParser: true, useUnifiedTopology: true });

// 路由配置router.get('/', async ctx=> { ctx.body='Hello, world!';});

app.use(router.routes()).use(router.allowedMethods());

app.listen(3000, ()=> { console.log('Server is running on http://localhost:3000');});

gistfile1.txt

使用koa2框架,基于注册登录功能简单的介绍了mongodb的使用 一、首先我们先看下目录结构 目录结构 1、在mongo目录下有个app.js文件(入口文件) 2、然后views是模板文件目录 3、package.json 这个就不必多说了大家都了解 二、在node中使用mongodb,首先要先安装好nodejs和mongodb,window下启动mongodb可能会遇到一些问题,可以参考:启动mongodb遇到的一些问题三、然后安装各种必须的依赖,下面是app.js的代码,注释已经详细(因为是练习,所以都放在一个文件下),全部代码参考github:代码, //使用koa2 const Koa = require('koa'); //路径处理 var path = require('path'); //接收请求的数据处理 const bodyParser = require('koa-bodyparser'); //路由处理 const Router = require('koa-router'); //加载模板 var views = require('koa-views') //使用之后就可以直接使用了 const app = new Koa(); const router = new Router(); //配置mongodb数据库相关的内容 const mongoose = require('mongoose'); mongoose.connect('mongodb://localhost/mongo'); //创建模型 var User = mongoose.model('User',{username:String,password:String}); // 配置服务端模板渲染引擎中间件 使用ejs模板 app.use(views(path.join(__dirname, './views'), { map: { html:'ejs' } })) //数据处理模块 app.use(bodyParser()) //首页 router.get('/',async (ctx,next)=>{ ctx.body = 'hello' }) // '/login' get请求去到login页面 router.get('/login',async (ctx,next)=>{ await ctx.render('login') }) //注册页 router.get('/register',async (ctx,next)=>{ await ctx.render('register') }) //注册传过来的数据 router.post('/register',async (ctx,next)=>{ const{username,password} = ctx.request.body //添加数据 if(!username || password){ ctx.body = { code:1, msg:'用户名或者密码不能为空' } } var user = new User({ username: username, password:password }); await user.save(function(err, res) { // 如果错误,打印错误信息 if (err){ ctx.body = { code:1, msg:'err' } } ctx.body = { code:2, msg:'ok' } }) }) //数据查询 router.post('/login',async (ctx,next)=>{ const{username,password} = ctx.request.body await User. find({ username: username }). where('password').equals(password). exec((err,res)=>{ if(err){ console.log(err); }else{ if(res){ ctx.body = { code:2, data:{ username:res[0].username }, msg:'ok' } }else{ ctx.body = { code:1, msg:'err' } } } }); }) //要使用router.routes() 路由才会有效果 app.use(router.routes()) app.listen(3000) 博客地址:yxlblog.com