码迷,mamicode.com
首页 > 数据库 > 详细

Express+mongodb开发web后台接口

时间:2018-08-27 22:02:04      阅读:721      评论:0      收藏:0      [点我收藏+]

标签:关系型数据库   返回   nec   mys   list   内容   require   字段   span   

摘要:

  express开发web接口

  非关系型数据库mongodb

  使用nodejs和mongoose模块链接和操作mongodb

一、express

express基于nodejs,快速、开发、极简的web开发框架

安装express:

npm install express --save

server.js文件如下:

const express=require(‘express‘);
//新建app
const app=express();
//客户端访问/时返回一段文本
app.get(‘/‘,function(req,res){
  res.send(‘<p>hello world</p>‘)
})
//客户端访问/data时返回json数据
app.get(‘/data‘,function(req,res){
  res.json({"name":"lizhao","age":"2"})
})
//监听9093
app.listen(9093,function(){
  console.log(‘node app start 9093‘)
})

  app.get 、app.post分别开发get,post接口;app.use使用模块 ;res.send 、res.json 、res.sendfile响应不同的内容。

安装nodemon

  监听路由和响应内容,使得每次修改后服务自动启动。

npm install nodemon -g

启动

nodemon server.js

二、非关系型数据库mongodb

  mongodb的安装和使用详见:

三、使用nodejs和mongoose模块链接和操作mongodb

安装mongoose

npm install mongoose --save

通过mongoose操作mongodb,mongodb存储的就是json,相对mysql来说容易的多。

mongoose的基础使用

connect连接数据库

model新建模型、Schema定义文档模型

create,remove,update来增删改

find和findOne来查询数据

const express=require(‘express‘);
const mongoose=require(‘mongoose‘);
//连接mongo,并且使用imooc这个集合
const DB_URL=‘mongodb://127.0.0.1:27017/imooc‘;
mongoose.connect(DB_URL);
mongoose.connection.on(‘connected‘,function(){
  console.log(‘connect‘)
})
//类似与mysql的表,mongo里有文档、字段的概念, 新建一个文档模型
const User=mongoose.model(‘user‘,new mongoose.Schema({
  user:{type:String,require:true},
  age:{type:Number,require:true}
}))
//
 User.create({
   user:‘lizhao‘,
   age:19
 },function(err,doc){
   if(!err){
     console.log(doc)
   }else{
    console.log(err)
  }
})
//新建app
const app=express();
//客户端访问/时返回一段文本
app.get(‘/‘,function(req,res){
  res.send(‘<p>hello world</p>‘)
})
//客户端访问/data时返回查询User后得到的json数据
app.get(‘/data‘,function(req,res){
  //
  User.find({},function(err,doc){
    if(!err){
      return res.json(doc)
    }
  });
})
//
User.remove({age:18},function(err,doc){
  console.log(doc)
})
//
User.update({age:19},{‘$set‘:{age:20}},function(err,doc){
  console.log(doc)
})
//监听9093
app.listen(9093,function(){
  console.log(‘node app start 9093‘)
})

 

Express+mongodb开发web后台接口

标签:关系型数据库   返回   nec   mys   list   内容   require   字段   span   

原文地址:https://www.cnblogs.com/superlizhao/p/9541820.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!