nodejs 가 mongodb 데이터베이스 에 대한 추가 수정 인 스 턴 스 코드

6229 단어
다음은 인 스 턴 스 코드 입 니 다.

/**
1.npm install mongodb --save-dev / cnpm install mongodb --save-dev

2.var MongoClient = require('mongodb').MongoClient;

 var url = 'mongodb://localhost:27017/test';          

 3.     

 MongoClient.connect(url, function(err, db) {

});

 4.        

 MongoClient.connect(url, function(err, db) {

  db.collection('user').insertOne({'name':'zhangsan'},function(error,data){

  })

});


 */
var http=require('http');

var ejs=require('ejs');

var MongoClient = require('mongodb').MongoClient; /*      MongoClient*/

var DBurl = 'mongodb://localhost:27017/userDb'; //           student        

var url=require('url'); /*  url  */
var app=require('./model/express-route.js');

http.createServer(app).listen(3000);


app.get('/',function(req,res){
  var msg='        '
  ejs.renderFile('views/index.ejs',{msg:msg},function(err,data){
    res.send(data);
  })

})



app.get('/add',function(req,res){
  //    

  MongoClient.connect(DBurl,function(err,db){ /*     */

    if(err){

      console.log(err);
      console.log('       ');
      return;
    }

    //    

    db.collection('user').insertOne({

      "name":"loaderman",
      "age":10

    },function(error,result){
      if(error){

        console.log('      ');
        return;
      }
      res.send('      ');
      db.close();/*     */
    })



  })
})




app.get('/edit',function(req,res){
  //    

  //res.send('      ');


  MongoClient.connect(DBurl,function(err,db){

    if(err){

      console.log(err);
      console.log('       ');
      return;
    }
    db.collection('user').updateOne({"name":"loaderman"},{$set:{
      "age":666
    }},function(error,data){
      if(error){

        console.log('      ');
        return;
      }

      console.log(data);
      res.send('      ');
      db.close();/*     */

    })



  })

})


app.get('/delete',function(req,res){
  //    
  //delete?name=lisi


  //console.log(url.parse(req.url,true));

  var query=url.parse(req.url,true).query;


  //console.log(query.name);

  var name=query.name;


  MongoClient.connect(DBurl,function(err,db){

    if(err){

      console.log(err);
      console.log('       ');
      return;
    }

    db.collection('user').deleteOne({"name":name},function(error,data){

      if(error){

        console.log('    ');
        return;
      }

      console.log(data);
      res.send('      ');
      db.close();

    })
  })
})

app.get('/query',function(req,res){
  MongoClient.connect(DBurl,function(err,db){
    if(err){

      console.log('       ');
      return;
    }

    //    
    var list=[]; /*             */

    var result=db.collection('user').find({});


    result.each(function(error,doc){


      //console.log(doc);
        if(error){
          console.log(error);
        }else{

          if(doc!=null){
            list.push(doc);

          }else{ /*doc==null        */

            /*      */
            //console.log(list);

            ejs.renderFile('views/index.ejs',{list:list},function(err,data){

              res.send(data);
            })

          }

        }

    })

    //console.log(result);

  })

})

데이터 삽입

/**
 *       
 * @param table_name   
 * @param insertData      
 * @param callback     
 */
MongoDbAction.insertData= function (table_name, insertData , callback) {
  var node_model = this.getConnection(table_name);
  node_model.insertOne(insertData , function (err, res) {
    if (err) {
      callback(err);
    } else {
      callback(null, res);
    }
  });
};

조회 데이터

/**
 *       
 * @param table_name   
 * @param conditions     
 * @param callback     
 */
MongoDbAction.findOne = function (table_name, conditions, callback) {
  var node_model = this.getConnection(table_name);
  node_model.findOne(conditions, function (err, res) {
    if (err) {
      callback(err);
    } else {
      callback(null, res);
    }
  });
};

데이터 업데이트

/**
 *       
 * @param table_name   
 * @param conditions      {"name":'jackson  '}; 
 * @param updateStr      {$set: { "url" : "https://www.cnblogs.com/jackson-zhangjiang" }};
 * @param callback     
 */
MongoDbAction.updateOne= function (table_name, conditions,updateStr , callback) {
  var node_model = this.getConnection(table_name);
  node_model.updateOne(conditions,updateStr, function (err, res) {
    if (err) {
      callback(err);
    } else {
      callback(null, res);
    }
  });
};

이상 은 이번에 소개 한 모든 관련 지식 입 니 다. 여러분 의 학습 에 감 사 드 립 니 다.보충 이 있 으 면 편집장 에 게 연락 하 세 요.

좋은 웹페이지 즐겨찾기