Node.js + MongoDB 项目实战(二)  创建项目

在项目实战(一)中,已经配置好了开发环境(详见:http://www.cnblogs.com/jameslong/articles/3451152.html),这一节,来创建一个具体的项目,并对项目结构进行解析;

可以参考:http://expressjs.jser.us/guide.html

1. 在本地安装express项目

打开CMD命令行工具,输入npm install -g  express 将express安装到本地,-g为全局安装的意思,这样可以在本地计算机的任何位置使用express框架生成器生成项目;

2. 创建项目文件结构

项目文件可以自己创建,也可以使用express框架,现在直接使用express框架,则在cmd中输入:“express  myapp”即可在制定的文件夹下创建名为myapp的项目;在完成项目安装后会提示安装依赖,根据提示进行操作即可;

3. 打开项目下的package.json的文件:

{
  "name": "application-name",
  "version": "0.0.1",
  "private": true,
  "scripts": {
     "start": "node app.js"
  },
  "dependencies": {
    "express": "3.4.8"
}
}

json是一种文本格式,内容以“键”:“值”对的方式存在,可以嵌套,此种类型为集合;name是包名,scripts下的star是对项目启动的描述,在命令行中跳转到项目文件夹下,输入node app.js即可启动该应用,version是包的版本,dependencies:是依赖,node.js中要只要要项目调用,则必须指明其依赖关系,express:3.4.8 是node.js的mvc框架express的版本(为本博文创建时的最新版)。

4. 项目测试

在命令行CMD中跳转到项目文件夹下,输入mode app.js 会输出  Express  server listening on port 3000

在浏览器url中输入127.0.0.1:3000 按下回车键即可;

5.  项目补充

上面创建的是最简单,也是最基本的项目框架,在项目中还要有模板引擎 ejs jade 等,还有session , stylus 等等,这些都是可以在项目需要的时候添加进去;比如要添加ejs模板引擎,方法很简单,打开项目中的package.json文件,然后在dependencies 中加上:“ejs”:"*",保存文件,并在CMD中输入“npm install”即可完成安装;然后在app.js 文件中修改模板引擎即可,express默认是jade模板引擎。其他的包类似,代码编辑器webstorm 中有node.js 的包管理器,可以直接选择需要添加的包,mogoose让mongoDB操作更简单,所以mongoose是一个包,用来操作mongoDB数据库的,后面用到该数据库,再讲解这个包的安装以及使用。

6. 完善项目

bootstrap,jquery等UI ,JS框架,只要按照从官网上下载相应的版本,解压,将文件放在public文件夹下对应的文件夹中,按照常规的方式进行引用即可。

到此node.js的项目就搭建起来了,对于新手来说,可能觉得云里雾里,或者是本人比较笨拙吧,在接触node.js 之初,只会按照《node.js 开发指南》一束照抄,但是后来才发现其实也没那么难;

对于新手,不管是接触任何技术,都会面临的一个困难,就是不知道一个项目的结构,各部分的职责,各部分的关联,以及工作机制。其实,在软件工程中,很多的东西都是互通的。

Node.js +Express+MongoDB+mogoose+ejs+bootstrap+jquery的更多相关文章

  1. Node.js Express+Mongodb 项目实战

    Node.js Express+Mongodb 项目实战 这是一个简单的商品管理系统的小项目,包含的功能还算挺全的,项目涵盖了登录.注册,图片上传以及对商品进行增.删.查.改等操作,对于新手来说是个很 ...

  2. Node.js+Express+MongoDB数据库实现网页注册登入功能

    通过 Node.js + Express + MongoDB 实现网页注册账号 和 登入账号的功能 项目准备: 1: 事先准备好项目的页面 (首页页面 index.html)(登入页面 login.h ...

  3. node.js+express+mongodb

    主要是想用node.js链接mongodb,用的是mongoose.用ejs引擎,扩展到.html比较容易 小例子结构简单,框架清晰. 提交方法 路径 方法 作用 get add     post a ...

  4. 【nodejs笔记1】配置webstorm + node.js +express + mongodb开发博客的环境

    1. 安装webstorm 并破解 2. 安装node (以及express框架) 至官网下载并安装.(http://nodejs.org)v0.10.32   msi  安装后测试,打开命令行, c ...

  5. Node.js + Express + Mongodb 开发搭建个人网站(一)

    一.Node + Express环境搭建 0.去Node官网下载安装node,如果安装了 npm 和 node的话 那么就 安装 全局的 express,-g全局安装 npm install expr ...

  6. ubuntu安装node.js+express+mongodb

    输入以下命令安装: sudo apt-get install nodejs 安装完成后,终端输入nodejs,就能进入node命令啦: 但是正常下应该是输入node进入命令而不是nodejs: 在Ub ...

  7. ubuntu 安装node.js + express + mongodb

    转载自http://my.oschina.net/reg/blog/289536 Ctrl + Alt + T,打开终端,输入以下命令安装: sudo apt-get install nodejs 安 ...

  8. Node.js + Express + Mongodb 开发搭建个人网站(二)

    二.路由 1.打开 routes/index.js ,这个意思就是  捕获到访问主页的get请求: 并通过 app.js 分配到对应的路由里: 看到这里,打开 http://127.0.0.1:300 ...

  9. Node.js + Express + Mongodb 开发搭建个人网站(三)

    三.后台架构 1.在根目录下(和 views 文件夹同级)创建 lib 文件夹 以后所有后端内容 都是在这里写,分别创建三个文件夹 到 lib 目录下: mongo  放的是数据的存储 module  ...

随机推荐

  1. 张艾迪Eidyzhang:解码天才Eidyzhang的诞生

    AOA解码:天才Eidyzhang的诞生AOA深度解读:世界第一天才Eidyzhang: (TheWorldNo.1Girl+TheWorldNo.1InterentGirl+世界第一女孩+世界第一互 ...

  2. 并查集 POJ 1988

    #include <cstdio> #define N 30010 int pa[N]; //parent int siz_tree[N]; //size of tree int d[N] ...

  3. 算法——js(Fibonacci数列)

    斐波那契数列(Fibonacci sequence),又称黄金分割数列,因数学家列昂纳多·斐波那契(Leonardoda Fibonacci[1]  )以兔子繁殖为例子而引入,故又称为“兔子数列”,指 ...

  4. netty4 断线重连

    转载:http://www.tuicool.com/articles/B7RzMbY 一 实现心跳检测 原理:当服务端每隔一段时间就会向客户端发送心跳包,客户端收到心跳包后同样也会回一个心跳包给服务端 ...

  5. 源码编译Chrome

    官网描述 http://www.chromium.org/developers/how-tos/build-instructions-windows 为啥还要写这篇博客 太久没在这里写博客 Chrom ...

  6. C++ STL pair

    没有找到priority_queue里存放pair不用typedef的方法...大概第一次觉得这个有用吧... 优先队列里和sort函数对pair 的默认排序是first从小到大,second从小到大 ...

  7. mysql启动报错

    查看报错日志: 131023 15:02:59 [ERROR] Can't start server: Bind on TCP/IP port: No such file or directory13 ...

  8. ruby在线学习

    http://tryruby.org/ [Heroku空间] 免费ruby空间

  9. NoSQL分类

    NoSQL数据库分类: NoSQL DEFINITION:Next Generation Databases mostly addressing some of the points: beingno ...

  10. iOS不显示状态栏(电池和信号栏)

    //隐藏状态栏 - (BOOL)prefersStatusBarHidden { return YES; } 在viewcontroller里面加入