• MongoHelper


    /*
    @@decription mongodbHelper
    @@version 1.0
    @@author think_fish&&dachie
    @@copyright think_fish@@dachie
    */
    
    var mongodb=require('./db.js');
    
    
    function Helper(){};
    module.exports=Helper;
    
    /*
    @@新增方法
    @@tbName:表名      :string
    @@obj:新增对象     :{}
    @@callback:回调    :function
    @@ensure:唯一索引 :{}
    */
    Helper.execInsert=function(tbName,obj,callback,ensure){
         ensure=ensure||{};
         mongodb.open(function (err,db) {
             if(err){
                mongodb.close();
                 return callback(err);
             }
             db.collection(tbName,function(err,collection){
                 if(err){
                     mongodb.close();
                     return callback(err);
                 }
                 collection.ensureIndex(ensure,{'unique':true});
                collection.insert(obj,{safe:true},function  (err,doc) {
                    mongodb.close();
                    callback(err,doc);
                });
    
             });
         })
    }
    
    /*
    @@修改方法
    @@tbName 表名    :string
    @@oldObj 原对象      :{}
    @@newObj 新对象      :{}
    @@callback 回调      :function
    */
    Helper.execUpdate =function(tbName,oldObj,newObj,callback) {
        mongodb.open(function  (err,db) {
            if(err){
               mongodb.close();
               return callback(err);
            }
            db.collection(tbName,function(err,collection){
                if(err){
                    mongodb.close();
                    return callback(err);
                }
                collection.update(oldObj,{
                    $set:newObj
                },{safe:true},function(err,doc){
                    mongodb.close();
                    callback(err,doc);
                });
            });
        })
    }
    
    /*
    @@删除方法
    @@tbName 表名    :string
    @@delObj 原对象      :{}
    @@callback 回调      :function
    */
    Helper.execRemove=function(tbName,delObj,callback){
        mongodb.open(function (err,db) {
             if(err){
                mongodb.close();
                 return callback(err);
             }
             db.collection(tbName,function(err,collection){
                 if(err){
                     mongodb.close();
                     return callback(err);
                 }
                collection.remove(delObj,{safe:true},function  (err,count) {
                    mongodb.close();
                    callback(err,count);
                });
    
             });
         })
    }
    
    /*
    @@删除方法
    @@tbName 表名    :string
    @@query 查询条件     :{}
    @@callback 回调      :function
    */
    Helper.find=function(tbName,query,callback,sort){
        mongodb.open(function(err,db){
            if(err){
                mongodb.close();
                return callback(err);
            }
    
            db.collection(tbName,function(err,collection){
                if(err){
                    mongodb.close();
                    return callback(err);
                }
    
                collection.find(query).sort(sort).toArray(function(err,list){
                    mongodb.close();
                    callback(err,list);
                });
            });
        });
    }
    
    /*
    @@删除方法
    @@tbName 表名    :string
    @@query 查询条件     :{}
    @@callback 回调      :function
    */
    Helper.findOne=function(tbName,query,callback){
        mongodb.open(function(err,db){
            if(err){
                mongodb.close();
                return callback(err);
            }
            db.collection(tbName,function(err,collection){
                if(err){
                    mongodb.close();
                    return callback(err);
                }
                collection.findOne(query,function(err,doc){
                    mongodb.close();
                    callback(err,doc);
                });
            });
        });
    };
  • 相关阅读:
    翻转数组
    股神
    刮刮卡兑换
    军训队列
    击鼓传花
    上台阶
    @Service空指针异常 -JUNIT测试
    insert 配置信息
    url地址重叠
    shop = mapper.readValue(shopStr, Shop.class); shop=null的问题
  • 原文地址:https://www.cnblogs.com/think_fish/p/3615736.html
Copyright © 2020-2023  润新知