开始前,请确保mongodb已经能正常工作,安装教程:windows下MongoDB的安装及配置 , 请自行安装配置。下面进入正文:

第一步:命令行创建数据库、表,并插入一条数据

命令如下:

//创建数据库
use blog //创建一张表,并插入一条数据
db.users.insert({"name":"zhangangs","emali":"zhangangs@163.com","age":""}); //查看数据
db.users.find();

 

注意:mongodb在自动创建集合的时候会自动加上s,手动创建的时候建议加上,  (博主刚从这个坑里爬起来~~)    使用mongoose过程中遇到的疑惑(已经解决)

第二步:安装express+Mongoose(默认你已经安装好了nodejs)

//全局安装express
npm install express -g //安装express全局生成器,可以自动生成项目文件
npm install express-generator -g

下面在当前工作目录生成一个叫做blog的项目,并采用ejs模版。

// 默认是jade模版, -e就是采用ejs模版
express -e blog

然后安装所有依赖:

//进入项目文件夹
cd blog //安装所有依赖
npm install

windows平台下面启动项目,

//官方的方法,因该是调试模式,没深究
set DEBUG=blog $ npm start //直接启动
npm start

然后在游览器中打开http://localhost:3000/就可以看到应用了,到这里,express算是安装完成。

安装Mongoose 模块

进入当前项目根目录,输入:

//安装Mongoose,   --save把Mongoose模块加入到项目依赖
npm install mongoose --save

安装完成package.json 文件如下:

Mongoose模块安装完成!

第三步:express操作mongodb

1、修改route/index.js

var express = require('express');
var router = express.Router(); //mongodb
var mongoose = require('mongoose');
mongoose.Promise = global.Promise; var conn = mongoose.connect('mongodb://127.0.0.1:27017/blog');
var User = new mongoose.Schema({
name: String,
email: String,
age: String
}); var myModel = conn.model('user', User); /* GET index listing. */
router.get('/', function(req, res, next) {
myModel.findOne({name:"zhangangs"}, function (err, user) {
console.log(user);
res.render('index', {title: 'Express', user: user });
});
}); module.exports = router;

修改wiew/index.ejs

<!DOCTYPE html>
<html>
<head>
<title><%= title %></title>
<link rel='stylesheet' href='/stylesheets/style.css' />
</head>
<body>
<h1><%= title %></h1>
<p>姓名:<%= user.name %></p>
<p>邮箱:<%= user.email %></p>
<p>年龄:<%= user.age %></p>
</body>
</html>

重启服务器,刷新页面,效果如下:

完成,(>_<)

博主亲测可用。

nodejs中express 4.0 自动重启调试代码

Express4+Mongodb超简单入门实例的更多相关文章

  1. Express4+Mongodb极简入门实例

    一.准备工作: 1.启动mongodb:bin目录下运行 2.在test数据库里插入一条数据: 二.正式开始: 1.通过应用生成器工具 express 快速创建一个应用的骨架,参考Express中文网 ...

  2. 程序员,一起玩转GitHub版本控制,超简单入门教程 干货2

    本GitHub教程旨在能够帮助大家快速入门学习使用GitHub,进行版本控制.帮助大家摆脱命令行工具,简单快速的使用GitHub. 做全栈攻城狮-写代码也要读书,爱全栈,更爱生活. 更多原创教程请关注 ...

  3. ECharts.js 超简单入门(本质canvas)

    ECharts.js 超简单入门(本质canvas) 一.总结 一句话总结:echarts这些图标的本质都是canvas. 二.ECharts.js学习(一) 简单入门 EChart.js 简单入门 ...

  4. GitHub这么火,程序员你不学学吗? 超简单入门教程 【转载】

    本GitHub教程旨在能够帮助大家快速入门学习使用GitHub. 本文章由做全栈攻城狮-写代码也要读书,爱全栈,更爱生活.原创.如有转载,请注明出处. GitHub是什么? GitHub首先是个分布式 ...

  5. RestfulAPI超简单入门

    简单入门 REST -- REpresentational State Transfer,英语的直译就是"表现层状态转移" 是目前最流行的 API 设计规范,用于 Web 数据接口 ...

  6. express+mongodb+mongoose简单入门

    mongodb安装 window安装方法就不讨论了,比较简单~我们来看一下在linux下面的安装步骤~(这里需要一点linux的简单命令知识哈) 1.下载文件到服务器(先创建好自己想安装的目录)~ c ...

  7. vue服务端渲染简单入门实例

    想到要学习vue-ssr的同学,自不必多说,一定是熟悉了vue,并且多多少少做过几个项目.然后学习vue服务端渲染无非解决首屏渲染的白屏问题以及SEO友好. 话不多说,笔者也是研究多日才搞明白这个服务 ...

  8. 超简单入门Vuex小示例

    写在前面 本文旨在通过一个简单的例子,练习vuex的几个常用方法,使初学者以最快的速度跑起来一个vue + vuex的示例. 学习vuex需要你知道vue的一些基础知识和用法.相信点开本文的同学都具备 ...

  9. 【VB超简单入门】一、写在前面

    每本书的前面总得写点什么,到我这里也自然不能免俗,前言这东西“存在即合理”,所以就随便写一点咯~ 首先这本书是给从未接触过编程的童鞋准备的,由于我学识疏浅,对VB也只是一知半解所以也只能讲一点点最基础 ...

随机推荐

  1. iOS NSNotificationCenter详解

    通知中心的特点: 1:同步执行 2: 一对多发送消息 3: 降低程序耦合度 通知中心是单例,目的就是从任意一个发送消息到任意一个接收者,是同步执行的. 那么什么是同步呢? 用网上经典的说法,就是我叫朋 ...

  2. Razor速记

    1.语法 @{     int c=2; } @for(int i=0;i<c;i++) {     @i     @:@i     @:select     @:select @i     s ...

  3. 关于bundle install 的一点补充

    在第一次运行bundle install之后,生成了Gemfile.lock文件,里面记录gem的具体版本号,按照官方文档说明,以后运行bundle install就不会再依据Gemfile,而是根据 ...

  4. Entity Framework之IQueryable和list本地集合

    我们来说一下Iqueryable集合和List等本地集合的区别,下面我们通过建立一个简单的例子来学习这个知识点,直接进入主题吧 1.首先对比一下两段代码?看一下有什么结果: (1) 第一段代码如图所示 ...

  5. Maven:jar 下载相关的问题

    在使用Maven下载jar包时,会遇到一些问题,如何解决他们呢? 1.仓库里有jar 包,更新Maven时报仓库里找不到jar包的错误 这个问题,时常在版本有大的变动时出现.(例如:新增加了一些fea ...

  6. Oracle学习笔记五 SQL命令(三):Group by、排序、连接查询、子查询、分页

    GROUP BY和HAVING子句 GROUP BY子句 用于将信息划分为更小的组每一组行返回针对该组的单个结果 --统计每个部门的人数: Select count(*) from emp group ...

  7. Python写各大聊天系统的屏蔽脏话功能原理

    Python写各大聊天系统的屏蔽脏话功能原理 突然想到一个视频里面弹幕被和谐的一满屏的*号觉得很有趣,然后就想用python来试试写写看,结果还真玩出了点效果,思路是首先你得有一个脏话存放的仓库好到时 ...

  8. Spring MVC之@RequestParam @RequestBody @RequestHeader 等详解

    (转自:http://blog.csdn.net/walkerjong/article/details/7946109#) 引言: 接上一篇文章,对@RequestMapping进行地址映射讲解之后, ...

  9. [OFC]Mellanox发布首个200Gb/s硅光子设备

    [OFC]Mellanox发布首个200Gb/s硅光子设备 讯石光通讯网   发布时间:2016/4/6 8:18:20   编者:iccsz   点击143次     摘要:Mellanox日前在O ...

  10. android socket 线程连接openwrt与arduino单片机串口双向通信

    package zcd.netanything; import java.io.BufferedReader; import java.io.InputStreamReader; import jav ...