为了账号安全,请及时绑定邮箱和手机立即绑定

【学习打卡】第4天 MongoDB 基础入门

标签:
MongoDB Node.js

课程名称Vue3+ElementPlus+Koa2 全栈开发后台系统

课程章节: 第3章 Koa架构设计

主讲老师:河畔一角

课程内容:

今天学习的内容包括:Mongo的安装和在 koa.js 中的简单操作数据库。

课程收获:

Windows 系统中安装 Mongo 数据库:

在官网下载安装包进行安装:https://www.mongodb.com/try/download/community

安装过程比较简单,直接点下一步到完成即可。

配置 Mongodb:

在安装路径下创建 data\db 和 data\log 两个文件夹。

创建 mongod.cfg 配置文件:

systemLog:
    destination: file
    path: D:\MongoDB\data\log\mongod.log
storage:
    dbPath: D:\MongoDB\data\db

启动 MongoDB 服务:

D:\MongoDB\bin\mongod --dbpath D:\MongoDB\data\db

Koa.js 中连接 Mongo 数据库:

想在代码中操作数据库,需要安装对应的驱动程序:

npm install mongoose

数据库的配置信息,放到 config/index.js 文件中:

module.exports = {
    URL:'mongodb://127.0.0.1:27017/imooc-manager'
}

连接到数据库,放到 models/db.js 文件中:

const mongoose = require('mongoose')
const config = require('../config')
const log4js = require('../utils/log4js')

mongoose.connect(config.URL,{
    useNewUrlParser: true,
    useUnifiedTopology: true
})

const db = mongoose.connection;

db.on('error',()=>{
    log4js.error('***数据库连接失败***')
})

db.on('open',()=>{
    log4js.info('***数据库连接成功***')
})

将 db.js 导入到 app.js 使用,在启动时就可以连接到数据库了:

require('./models/db')

Koa.js 中操作数据库:

新建User数据集合的模型,models/userSchema.js:

const mongoose = require('mongoose')
const userSchema = mongoose.Schema({
    "userId" : Number,//用户ID,自增长
    "userName" : String,//用户名称
    "userPwd" : String,//用户密码,md5加密
    "userEmail" : String,//用户邮箱
    "mobile":String,//手机号
    "sex":Number,//性别 0:男  1:女 
    "deptId":[],//部门
    "job":String,//岗位
    "state" : {
        type:Number,
        default:1
    },// 1: 在职 2: 离职 3: 试用期
    "role": {
        type:Number,
        default:1
    }, // 用户角色 0:系统管理员  1: 普通用户
    "roleList" : [], //系统角色
    "createTime" : {
        type:Date,
        default:Date.now()
    },//创建时间
    "lastLoginTime" : {
        type:Date,
        default:Date.now()
    },//更新时间
    remark:String
})

module.exports = mongoose.model("users",userSchema,"users")

创建一个路由,routes/user.js

const router = require('koa-router')()
const User = require('../models/userSchema')
const util = require('../utils')

router.prefix('/users')

// 模拟创建用户
router.post('/add', async (ctx) => {

  const res = await User.create({
    userName: "admin",
    userPwd: "123456"
  })

  console.log(res)
  ctx.body = util.success(res)
})

module.exports = router

启动项目:

npm run dev

图片描述

图片描述

点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
Web前端工程师
手记
粉丝
2
获赞与收藏
4

关注作者,订阅最新文章

阅读免费教程

  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消