nodejs+express4.X连接mongodb数据库

  • 原创
  • |
  • 浏览:1368
  • |
  • 更新:

本文将介绍经典的nodejs+express4.X连接mongodb数据库.这也是nodejs流行的组合方式.

工具/原料

  • nodejs
  • npm
  • mongodb数据库
  • mongoose模块
  • 可视化工具 Robomongo(非必要)

方法/步骤

  1. 1

    全局安装express:

    命令:

    npm install -g express

    npm install -gexpress-generator

    查看是否全局安装express成功命令: express -V 注意是大写的V;或者 express -h

    看到版本号就算是安装成功了.

    nodejs+express4.X连接mongodb数据库
  2. 2

    express自动生成项目基本框架

    命令:express xxx;

    如果需要用ejs模板,命令:express -e xxx;

    cd testmongodb && npm install 下载基本依赖模块

    nodejs+express4.X连接mongodb数据库
  3. 3

    运行项目:

    npm start;

    访问: http://localhost:3000/

    看到如下图就算基本项目建立起来了

    nodejs+express4.X连接mongodb数据库
  4. 4

    安装mongodb数据库,在官网下载安装包安装好后,配置环境变量,

    我安装的目录:C:\Program Files\MongoDB

    把目录下的bin目录 C:\Program Files\MongoDB\Server\3.0\bin 加入path环境变量中 

    nodejs+express4.X连接mongodb数据库
    nodejs+express4.X连接mongodb数据库
  5. 5

    启动mongodb数据库,我在D盘abc文件夹下创建了data文件夹

    命令: mongod --dbpath=d:abc\data 启动,看到如下截图mongodb数据库就算是启动起来了.

    安装好 Robomongo可视化工具,看到的效果,只有系统数据库.

    nodejs+express4.X连接mongodb数据库
    nodejs+express4.X连接mongodb数据库
  6. 6

    改造项目:

    1.app.js里全局引入mongoose,本地test数据库,

    var mongoose=require('mongoose');

    mongoose.connect('mongodb://localhost/test?poolSize=40');

    2.在项目根目录创建schemas目录用于存放模式文件,以用户表为例:

    //users:用户模式文件

    var mongoose=require('mongoose');

    var UserSchema=new mongoose.Schema({

      username:{unique:true, type:String},

      password:String,

    })

    module.exports=UserSchema;

    3.在项目根目录创建models目录用于存放模型文件,以用户表为例:

    var mongoose=require('mongoose');

    var UserSchema=require('../schemas/user');

    var User=mongoose.model('User',UserSchema);

    module.exports=User;

    4.index.ejs加入一个form模拟注册.

    <form id="regForm" method="post" action="reg">

      <h2>用户注册</h2>

      <hr/>

        <label for="username" >用户</label>

          <input id="username" type="text" placeholder="输入注册用户名" name="username"/>

          <br/>

        <label for="password">密码</label>

          <input id="password" type="password" placeholder="用户密码" name="password" />

          <br/>

          <button type="submit">注册</button>

    </form>

    5.index.js路由添加一个方法,注册跳转方法.

    router.post('/reg', function(req, res, next) {

      var b = req.body;

      var _user={

        username: b.username,

        password: b.password

      }

      var user=new User(_user);

      user.save(function(err,user){

      if (err) {

      console.log(err);

      return;

      }

      console.log('注册成功');

      res.send('注册成功');

      })

    });

    到此项目改造完成.看看效果吧.项目结构如下:

    nodejs+express4.X连接mongodb数据库
  7. 7

    重新运行项目,访问: http://localhost:3000/

    nodejs+express4.X连接mongodb数据库
  8. 7
    该信息非法爬取自百度经验
  9. 8

    输入用户名test密码123456,点击注册,将看到数据库自动创建了test数据库,刚输入的数据也存在数据库中.

    nodejs+express4.X连接mongodb数据库
    nodejs+express4.X连接mongodb数据库
    END

注意事项

  • 可视化工具 Robomongo后面的版本貌似要收费了,下载之前的版本是免费的
  • 本经验为作者原创写作经验中的实际经验分享
  • 支持原创写作,支持百度经验
经验内容仅供参考,如果您需解决具体问题(尤其法律、医学等领域),建议您详细咨询相关领域专业人士。
作者声明:本篇经验系本人依照真实经历原创,未经许可,谢绝转载。
展开阅读全部