zoukankan      html  css  js  c++  java
  • JS封装 MongoDB

    const MongoClient = require('mongodb').MongoClient;
    const ObjectId = require('mongodb').ObjectId;
    const url = "mongodb://localhost:27017";

    const dbName = 'Javascript语言精粹';
    let obj = {};

    // 连接封装
    function _connect(callback){
        MongoClient.connect(url, function(err, client){
            if(err) throw err;
            callback(client);
            client.close();
        })
    }

    // 创建数据库集合
    obj.create = function(colName, fn){
        _connect(function(client){
            client.db(dbName).createCollection(colName, function(err, res){
                fn(err, res);
            })
        })
    }

    // 插入
    obj.insert = function(colName, dataArr, fn){
        _connect(function(client){
            const col = client.db(dbName).collection(colName);
            col.insert(dataArr, function(err, res){
                fn(err, res);
            })
        });
    }

    // 添加
    obj.save = function(colName, data, fn){
        _connect(function(client){
            const col = client.db(dbName).collection(colName);
            col.save(data, function(err, res){
                fn(err, res);
            });
        })
    }

    // 删除
    obj.remove = function(colName, filter, fn){
        _connect(function(client){
            const col = client.db(dbName).collection(colName);
            col.remove(filter, function(err, res){
                fn(err, res)
            })
        })
    }

    // 更新
    obj.update = function(colName, filterNum, update, fn){
        _connect(function(client){
            const col = client.db(dbName).collection(colName);
            col.update({"_id" : ObjectId(filterNum)}, {$set:update}, function(err, res){
                fn(err, res);
            })
        })
    }

    // 查找
    obj.find = function(colName, filter, fn){
        _connect(function(client){
            const col = client.db(dbName).collection(colName);
            col.find(filter).toArray(function(err, res){
                fn(err, res);
            })
        })
    }

    // 创建索引
    obj.index = function(colName){
        _connect(function(client){
            const col = client.db(dbName).collection(colName);
            col.createIndex({"anystr":"2dsphere"}, function(err, res){
                fn(err, res);
            })
        })
    }


    // obj.find('artical', {}, function(err, res){
    //     if(err) throw err;
    //     console.log(res);
    // })

    module.exports = obj;
  • 相关阅读:
    iOS:图片相关(19-05-09更)
    iOS:文字相关(19-01-08更)
    iOS:通信录(完成)(18-01-18更)
    Swift 中的Closures(闭包)详解
    Swift 中的高阶函数和函数嵌套
    Swift API设计原则
    Swift下CoreData的使用
    iOS 使用贝塞尔曲线绘制路径
    iOS CALayer使用
    iOS 多线程的使用
  • 原文地址:https://www.cnblogs.com/SharkJiao/p/13921384.html
Copyright © 2011-2022 走看看