Node.js中使用mongoskin操作mongoDB实例

2020-06-17 06:20:56易采站长站整理

一、废话

从13年1月份接触mongodb进行开发,开发了旅游标签服务、微博标签检索系统、地图服务、web APP服务…使用MongoDB的场景从.NET、JAVA环境转到了node.js平台。越发觉Node.js和mongodb结合感觉的很好。感觉mongodb和node.js是天生的一对。的确,mongodb的客户端是JS的解析引擎。因此,选择mongodb和node.js做产品原型也是很nice的选择。网上,遇到网友询问mongodb的开发,选择哪个driver最好,以前一直是使用原生的driver,但是写起来代码有很多需要注意的,比如连接的关闭操作等等…因此,在node.js开发环境下我这里推荐使用mongoskin。

二、几个需要说的概念

(1)数据库:同关系数据库一样。
(2)集合: 关系数据库中的表。
(3)文档: 类比关系数据库的记录,实则是JSON对象。
(4)数据库设计:建议考虑NoSQL设计,抛弃关系数据的设计思想;其实NoSQL数据库设计博大精深,需要不断地在项目中实践。
(5)用户体系:每一个数据库都有自己的管理员,可以:

use dbname; db.addUser(‘root_1’ , ‘test’);
(7)建议更改对外端口
(8)启动服务(这是win下,linux下稍作修改):

mongod –dbpath “XXMongoDBdatadb” –logpath “XXMongoDBlogmongo.log” –logappend -auth –port 7868

三、搭建mongodb开发基础设施

(0) npm install mongoskin 安装mongoskin

这里不介绍Node.js安装、package等机制。

(1)创建配置文件 config.json


{
    “dbname”:”TEST”,
    “port”: “7868”,
    “host”: “127.0.0.1”,
    “username”: “test”,
    “password”: “test”
}

(2)创建util相关类mongo.js :导出一个DB对象


var mongoskin = require(‘mongoskin’),
    config = require(‘./../config.json’);

/*
 * @des:导出数据库连接模块
 * */
module.exports = (function(){
    var host = config.host,
        port = config.port,
        dbName = config.dbname,
        userName = config.username,
        password = config.password,
        str = ‘mongodb://’ + userName + ‘:’ + password + ‘@’ + host +’:’ + port+ ‘/’ + dbName;

    var option = {
        native_parser: true