1.首先下载 mongodb
2.在运行mongod 的盘录下建一个data.db的文件 (如果没有的话)
3.在控制台运行mongo之后可以输入查询语句查看mongodb数据库
3.1 创建一个叫 runoob 的数据库 bd 可以查看有哪些数据库
> use runoob
switched to db runoob
> db
runoob
>
3.2 如果你想查看所有数据库,可以使用 show dbs 命令
3.3 可以看到,我们刚创建的数据库 runoob 并不在数据库的列表中, 要显示它,我们需要向 runoob 数据库插入一些数据。
> db.runoob.insert({"name":"菜鸟教程"})
WriteResult({ "nInserted" : 1 })
> show dbs
admin 0.000GB
config 0.000GB
local 0.000GB
runoob 0.000GB
3.4 切换到数据库 runboot
switched to db runoob
3.5 删除数据库
db.dropDatabase()
3.6 查看数据集合
db.集合名称.find()
(具体的 *** 作可以查看菜鸟教程学习)
4.接下来配置 nodejs
下面以user中的文件和app.js的做介绍
4.1 uesr.js 文件
let mongoose = require('mongoose')
//1.引用mongoose
mongoose.connect('mongodb://localhost/tea',{useNewUrlParser: true})
//2.关联到哪个数据库
let Schema = mongoose.Schema
//3.新建一个叫userSchema的集合
let userSchema = new Schema({
//4.下面是他定义的属性 就像mysql中表的属性类型等定义
phone: {
type: String,
require: true
},
name: {
type: String,
require:true
},
address: {
type: String,
require:true
},
balance: {
type: String,
require:true
},
password: {
type: String,
require:true
}
})
//5.最后导出 后面router.js会引用
module.exports = mongoose.model('User',userSchema)
4.2 router.js
其他一些数据库查询语句可以查看moogodb官网
//1.引入上面的user.js文件 好像不用加js也可以
let User = require('./user')
//2.使用 express 框架 用用express框架的router开接口
let express = require('express')
let router = express.Router()
//3.post请求需要安装中间件 等下在app.js中会提及
router.post('/user/login', function (req, res) {
//4.user 集合的查找写法
User.find({
//4.1查找的phone 和 paaword 传参
// req.body拿到前台传过来的参数
phone: req.body.phone,
password: req.body.password
},
function (err, ret) {
if (err) {
console.log('查找失败');
} else {
//4.2查找结果返回
res.send(ret)
}
}
)
})
//5.新建对象写法
router.post('/user', function (req, res) {
new User({
phone: req.body.phone,
name: req.body.name,
address: req.body.address,
balance: req.body.balance,
password: req.body.password
}).save(function (err, ret) {
if (err) {
console.log('保存失败');
} else {
}
})
})
//6.最后导出 app.js文件挂载上去
module.exports = router
4.3 app.js
//1. 这里就是引用这个中间件之后就可以发起post请求
const bodyParser = require('body-parser')
let express = require('express')
let app = express()
let tea = require('./tea/router')
//2.开辟静态资源
app.use('/public/', express.static('./public/'))
//挂载中间件 ##一定要在别的文件引用该中间件之前挂载
app.use(bodyParser.urlencoded({extended:false}))
app.use(bodyParser.json())
app.use(user)
//3.允许跨域
app.all("*",function(req,res,next){
//设置允许跨域的域名,*代表允许任意域名跨域
res.header("Access-Control-Allow-Origin","*");
//允许的header类型
res.header("Access-Control-Allow-Headers","content-type");
//跨域允许的请求方式
res.header("Access-Control-Allow-Methods","DELETE,PUT,POST,GET,OPTIONS");
if (req.method.toLowerCase() == 'options')
res.send(200); //让options尝试请求快速结束
else
next();
})
//4.开辟端口号 这样就可以启动一个后台服务器了
app.listen(3000, function () {
console.log('项目启动成功....');
})
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)