nodejs学习过程
一、安装nodejs
- 安装完成后,检查PATH环境变量是否配置了nodejs, 运行cmd,输入path,查看nodejs和npm是否配置。(参考菜教程)
- node -v ; npm -v 查看版本信息
二、安装Express
- 安装express并将其保存到依赖列表
npm install express -save;
以上命令会将 Express 框架安装在当期目录的 node_modules 目录中, node_modules 目录下会自动创建 express 目录。
2. 在express4.0之后,还需要安装express-generator 来完成express项目的创建,
执行命令 : npm install -g express-generator;
3. 以下几个重要的模块是需要与 express 框架一起安装的:
npm install body-parser --save
npm install cookie-parser --save
npm install multer --save
三、创建express项目
1. cd 到项目目录
2. 创建express项目;执行:express 项目名称
(models是我自己新建的,想熟悉MVC)
express app;目录如下:

使用express app 默认使用的jade的模板引擎;
如果使用ejs 加参数 -e ; 执行:express -e app
3.cd到项目名称目录下,执行:npm install ;安装项目依赖,会在项目下生成node_modeles;
(起初命令npm install并没有成功安装,cmd一直处在不停安装状态,在基友电脑安装成功,无解?node -v 和 npm -v检查的版本分别是5.X和4.X;无赖卸载重装,依赖安装成功,node -v 和 npm -v检查的版本分别是4.X和2.X;)
4.执行命令:npm start;服务器运行,在浏览器运行URL:localhost:3000,即可看到默认的express页面。
5. supervisor工具实现代码修改和自启动cd
如果不想每次修改代码后,重启服务器,使用supervisor工具实现代码修改和自启动,安装supervisor命令如下:
|
1
|
npm install -g supervisor |
注意:必须全局安装,否则不可以使用supervisor命令。如果使用webstorm新建项目进行开发,步骤4可省略。
重启服务器:将会不断检测程序是否有更新和重启服务器。
|
1
|
supervisor app.js |
四、MongoDB
1.安装在MongoDB目录 ,在MongoDB文件夹中创建一个 data 文件夹,再在 data 文件夹中创建 db 文件夹;
创建一个 log文件夹,再在 log 文件夹中创建 log.txt;
2.cd 到 MongoDB安装目录下的bin目录下
启动MongoDB

mongod --dbpath D:\Mongodb\data --port 10001
It looks like you are trying to access MongoDB over HTTP on the native driver port.
如此,Mongodb数据库服务已经完全启动了。
![]()
3. 客户端连接数据库
4.设计数据库
mongo //进入数据库
use helloworld //创建项目数据库
db.addUser("shuaige", "123456") //给这个数据库创建了一个账号
(!!!!报错!!!, db.addUser is not a function ;3.0后使用db.createUser方法如下)
db.createUser(
{
user: "accountUser",
pwd: "password",
roles: [ "readWrite", "dbAdmin" ]
}
)
![]()
然后,我们就为这个helloworld数据库创建collection(collection就相当于oracle和mysql里的table)
db.createCollection("users") //创建一个集合,也就是表
db.users.insert({userid: "admin", password: "123456"}) //给users里添加一个文档,也就是一条记录账号admin,密码123456
ok,现在检查一下:
db.users.find() //如果看到你刚刚添加的文档记录,就ok咯
![]()
db.users.find().pretty(); pretty方法会格式化输出内容,添加换行缩进。
5.在views下添加页面
看了下ejs和jade页面,感觉还是ejs更满足我的习惯,ejs和jsp很像。
对比ejs和jade
index.ejs :
1 <!DOCTYPE html> 2 <html> 3 <head> 4 <title><%= title %></title> 5 <link rel='stylesheet' href='/stylesheets/style.css' /> 6 </head> 7 <body> 8 <h1><%= title %></h1> 9 <p>Welcome to <%= title %></p> 10 </body> 11 </html>
index.jade :
1 extends layout 2 3 block content 4 h1= title 5 p Welcome to #{title}
(
插曲: 错误:Cannot find module 'mongoose',解决:
npm install mongoose --save
This adds mongoose it topackage.jsonwhich Heroku uses to build your app)
6.总结mongoDB数据库操作
cd bin //进入bin目录
mongo //进入数据库
use dbName //创建项目数据库
show dbs //查看所有数据库(MongoDB 中默认的数据库为 test,如果你没有创建新的数据库,集合将存放在 test 数据库中。)
db //查看当前数据库
use dbName; db.dropDatabase(); //删除数据库(没用use dbName,默认为 test)
db.createUser("shuaige", "123456") //给这个数据库创建了一个账号
然后,我们就为这个helloworld数据库创建collection(collection就相当于oracle和mysql里的table)
db.createCollection("users") //创建一个集合,也就是表
db.users.insert({userid: "admin", password: "123456",like:['song','book']}) //给users里添加一条记录,mongoDB会自动生成 _id
db.users.remove()//删除
db.users.find({"userid":"admin"}).pretty() //查询,and和or
or: find({$or: [{},{}]})
and 和 or : find({"like": {$gt: 2} , $or: []})
mongoDB条件符(放在一对括号里,如上)
> $gt
< $it
>= $gte
<= $ite
db.users.update({"userid": "admin"},{$set:{"password": "123123"})
语法:
db.collection.update( <query>, <update>, { upsert: <boolean>, multi: <boolean>, writeConcern: <document> } )
- query : update的查询条件,类似sql update查询内where后面的。
- update : update的对象和一些更新的操作符(如$,$inc...)等,也可以理解为sql update查询内set后面的
- upsert : 可选,这个参数的意思是,如果不存在update的记录,是否插入objNew,true为插入,默认是false,不插入。
- multi : 可选,mongodb 默认是false,只更新找到的第一条记录,如果这个参数为true,就把按条件查出来多条记录全部更新。
- writeConcern :可选,抛出异常的级别。
db.users.save({}) //也可使用save来更新
posted on 2016-06-02 23:57 duoduo1727 阅读(178) 评论(0) 收藏 举报



浙公网安备 33010602011771号