MongoDb安装与配置环境变量
官网下载地址:https://www.mongodb.com/download-center#community
接下来我们使用 curl 命令来下载安装:
# 进入 /usr/local cd /usr/local # 下载 sudo curl -O https://fastdl.mongodb.org/osx/mongodb-osx-x86_64-3.4.2.tgz # 解压 sudo tar -zxvf mongodb-osx-x86_64-3.4.2.tgz # 重命名为 mongodb 目录 sudo mv mongodb-osx-x86_64-3.4.2 mongodb
安装完成后,我们可以把 MongoDB 的二进制命令文件目录(安装目录/bin)添加到 PATH 路径中:
export PATH=/usr/local/mongodb/bin:$PATH
运行 MongoDB
1、首先我们创建一个数据库存储目录 /data/db:
sudo mkdir -p /data/db
启动 mongodb,默认数据库目录即为 /data/db:
sudo mongod # 如果没有创建全局路径 PATH,需要进入以下目录 cd /usr/local/mongodb/bin sudo ./mongod
再打开一个终端进入执行以下命令:
$ cd /usr/local/mongodb/bin $ ./mongo MongoDB shell version v3.4.2 connecting to: mongodb://127.0.0.1:27017 MongoDB server version: 3.4.2 Welcome to the MongoDB shell. …… > 1 + 1 2 >
注意:如果你的数据库目录不是/data/db,可以通过 --dbpath 来指定。
Node.js下载安装
官网下载地址: https://nodejs.org/zh-cn/Express安装
$ npm install express-generator -g
新建项目并运行
$ cd myapp
$ npm install
$ cd bin
Express
Welcome to Express
项目运行成功。在项目根目录下新建/lib/mongo.js
var mongoose = require("mongoose");
var db = mongoose.connect('mongodb://localhost:27017/myblog');
module.exports = db
要连接的数据库为myblog
在项目根目录下新建/models/users.js
var mongoose = require("mongoose");
var db = require('../lib/mongo');
var Schema = mongoose.Schema ;
//一个用户模型
var UserSchema = new Schema({
username : { type:String },
password : {type: String},
avatar : {type: String},
age : { type:Number, default:0 },
description : { type: String},
email : { type: String },
github : { type: String },
time : { type:Date, default:Date.now }
});
//创建Model
var UserModel = db.model("user", UserSchema, "users" );//第一个参数为默认查找的数据库表名,第三个参数为制定的表名,不传查找默认
module.exports = UserModel
在项目根目录下新建/api/user_api.js
var UserModel = require("../models/users");
module.exports.user_list_get = function (req, res) {
UserModel.find({}, function (err, users) {
if (err) {
return res.send({status:0, msg:err || "获取失败"})
} else {
return res.send({status:1, msg:"获取成功", data:users})
}
}).limit(20)
}
在项目routes目录下新建/user_router.js
var express = require('express');
var router = express.Router();
var User = require('../api/user_api');
router.get('/list', User.user_list_get);//get请求
module.exports = router;
var userRouter = require('../routes/user_router');
在var app = express();下面调用app.use('/user', userRouter);
接口地址http://localhost:3000/user/list, user在app.js中定义,list在user_router.js中定义
注意查询之前需要往数据库中添加数据!!!