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;
  • 相关阅读:
    Python---面向对象---案例
    Python---面向对象---龟鱼游戏
    man lspci
    Python---面向对象---修学校
    Python---面向对象编程---自定义列表和集合操作类
    Python---面向对象编程
    Python---常用的内置模块
    man hdparm
    man lsof
    linux中文man手册安装
  • 原文地址:https://www.cnblogs.com/SharkJiao/p/13921384.html
Copyright © 2011-2022 走看看