一、安装MongoDB以及配置文件
1.下载安装
可以选择自己喜欢的目录安装(比如D盘)选择custorm设置目录
2.检测MongoDB是否安装成功,并配置启动命令
MongoDB安装目录的bin目录下,打开cmd命令行,输入命令‘mongod --help[mongod -h]’
3.设置数据文件和日志文件的存储位置
按自己的爱好设置文件的储存位置,本安装文档的储存位置设置在E盘,目录如下
E:\MongoDATA
├─data #MongoDB数据库中的数据的储存位置
└─log #MongoDB数据库中的日志的储存位置
└─mongodb.log # MongoDB数据库中的日志的储存文件
4.设置MongoDB服务
(1)设置MongoDB的环境变量
计算机>右键>属性>高级系统设置>环境变量>找到系统变量中的path变量
向path变量的结尾处添加MongoDB的安装目录下bin目录的地址
(2)安装MongoDB服务
在开始处用管理员身份打开cmd命令行,输入以下修改好的指令回车(ps:一定要以 管理员身份运行)
按照设置的储存位置,修改下面的命令(ps:如果是按本文档设置的储存位置,不用 在做更改)
mongod --logpath "E:\MongoData\log\mongodb.log" --logappend --dbpath
"E:\MongoData\data" --directoryperdb --serviceName "MongoDB" --serviceDisplayName "MongoDB" --install
#命令中字段的说明
******* --logpath 指定MongoDB日志文件的存储路径,注意是指定文件不是目录
******* --logappend 使用追加的方式写日志
** *** ** --dbpath 指定数据库数据的存储路径
******* --directoryperdb 每个DB都会新建一个目录
******* --serviceName 指定服务名称
******* --serviceDisplayName 指定服务名称,有多个mongodb服务时执行。
******* --install 指定作为一个Windows服务安装。
5.启动MongoDB服务
MongoDB安装目录的bin目录下,打开cmd命令行(服务端和客户端是两个cmd且不能关闭)
(1)启动客户端 mongo
(2)启动服务端 mongod --dbpath:E:/MongoData/data
二、用express搭建node服务
1.新建一个目录,在本目录下打开cmd(终端),执行初始化 npm init
会自动生成一个package.json,包含项目名字、版本号、项目描述、入口文件、单元测试、远程仓库、关键字、作者、许可证
2.项目目录 app.js 入口文件 把package.json 里 main 改成 "main":"app.js" 各种模块引入
3. bin 目录下是 www 配置文件 启动文件在package.json 设置 start (npm start 启动后台)
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1",
"start": "node ./bin/www",
"zs": "在packjson里面的script字段中写入一个 start 启动时就写成 npm start 否则换成其他字段必须用npm run字段启动 在相应的字段后面写上 node ./bin/www"
},
routers是路由文件(包括以下文件)
setting.js 链接数据库的路径
db.js 链接数据库 封装了数据的增删改查方法
index.js 是接口文件(express.router())
views 是静态资源文件 可以没有
4.搭简易服务器
1.导入http模块:var http=require("http");
2.创建服务器:varserver=http.createServer(function(req,res){ res.end() //响应结束 })
其中req是request的简写请求(可以去做路由) res是response的简写 响应
3.挂起服务器:server.listen(3000,“127.0.0.1”) localhost
*** 引入express主要是为了做路由(所谓的接口)包含好多中间件
5.暴露模块的两种方式及区别
exports暴露模块 module.exports暴露的是一个对象
区别:
1.module.exports初始值为一个空对象{} 只能出现一次 是个类(构造函数)
2.exports是指向的module.exports的引用 可以出现多次 不能暴露构造函数
3.require()返回的是module.exports而不是exports
用法:
exports:
exports.msg=msg; //msg是一个变量
exports.show=show; //show是一个函数
module.exports:
module.exports={
msg:msg,//msg是一个变量
show:show //show是一个函数
}
module.exports=People; //People是一个构造函数
把各种模块下载到生产环境中会在package.json中生成
最后 npm start 启动