10分钟教你看懂mongodb的npm包

最近刚开始接触node.js,在做一个博客,在学习过程中,肯定是接触了不少npm的包,主要就是学习使用它的API。现在所写的就是关于mongodb的使用。首先mongodb这个包是用来提供连接和操作mongdb这个数据库的包,如果你的后台数据库是采用的mongodb那么我们将要用到这个包。

首先我们在npm中去搜索这个包,就是第一个

我们点进去去看他的具体信息,我们直接看它的API手册

然后该文档的主页介绍了里面的一些资源文件(js文件)的大致作用:http://mongodb.github.io/node-mongodb-native/2.1/api/

例如:

这里的connection.js主要是用来进行数据库的各项操作的,如果我们要查找相应的api肯定要在这个文件中去找。而且还提示了Collection实例是不能被直接创建的(黑色加粗部分)。

要操作数据库,我们首先就得来连接到数据库,这里有两种方式:

第一种创建MongoClient实例,通过url来连接数据库

var MongoClient = require(‘mongodb‘).MongoClient,
  MongoClient.connect(‘mongodb://localhost:27017/test‘, function(err, db) {
  //todo
}

在这里,查看文档时,很关键的一个就是查看回调函数的说明。err代表连接时候的错误,如果为空说明连接数据库成功,如果失败了,err就不会为空,所以通常回调函数里面我们会进行err的判断,来做对应的处理。db就是连接的数据库。

第二种方式:不使用MongoClient实例来创建,这里面就有多种方式了,这里只举一种

用这种方式连接数据库应该是适用于单数据库服务器的情况下,而且黑体粗体文字表明,在我们使用了MongoClient来连接数据库时,Server是不应该被运用的。

现在我们已经连接了数据库,那么接下来就是要,操作数据库,既然要操作数据库,第一步就应该打开数据库,我们肯定会联想到open这个单词,按照以往的经验。不错连接数据库确实是open方法,它存在于我们DB.js中,是db实例的一个方法。如果有时不知道我们需要的方法的在哪个类中,我们可以在左边的搜索栏中进行搜索。

  mongodb.open(function (err, db) {//mongodb为连接的数据库
      if (err) {
        //todo
      }

    //todo  }

看这个API的使用,一定要去看它对应的回调函数是什么意思。

回调函数对两个参数都做了解释,参数意思很简单,这里就不用说了。当然如果数据库打开成功后执行其他操作产生了错误导致失败,就必须要先关闭数据库,所以close方法也是在db实例中。

既然已经打开数据库了,就可以实施操作数据库了,关于操作数据库的相关方法,在上面提到的Collection类中。最常用的都是增删改查,如果对英文反感,那就看这个吧:

http://www.runoob.com/mongodb/mongodb-tutorial.html

这篇文章主要是讲了如何来学习npm的包,如何来看api。当然我在学习中也有一点感受:

1 英文很重要

2 官网很重要

3 回调函数很重要,尤其是这种代码组织方式,我现在理解的还不够好

时间: 2024-10-14 06:30:43

10分钟教你看懂mongodb的npm包的相关文章

10分钟教你看懂OBD盒子

http://bangumi.tv//blog/58620 http://bangumi.tv//blog/58621 http://bangumi.tv//blog/58622 http://bangumi.tv//blog/58623 http://bangumi.tv//blog/58624 http://bangumi.tv//blog/58626 http://bangumi.tv//blog/58629 http://bangumi.tv//blog/58631 http://ban

10分钟教你搭建邮件服务器Postfix(RPM包安装)

简介 postfix是Wietse Venema在IBM的GPL协议之下开发的MTA(邮件传输代理)软件.postfix是Wietse Venema想要为使用最广泛的sendmail提供替代品的一个尝试.在Internet世界中,大部分的电子邮件都是通过sendmail来投递的,大约有100万用户使用sendmail,每天投递上亿封邮件.这真是一个让人吃惊的数字.Postfix试图更快.更容易管理.更安全,同时还与sendmail保持足够的兼容性. 工作原理 客户端通过Outlook软件,向邮件

【数据结构】10分钟教你用栈求解迷宫老鼠问题超详细教程附C++源代码

问题描述 给定一张迷宫地图和一个迷宫入口,然后进入迷宫探索找到一个出口.如下图所示: 该图是一个矩形区域,有一个入口和出口.迷宫内部包含不能穿越的墙壁或者障碍物.这些障碍物沿着行和列放置,与迷宫的边界平行.迷宫的入口在左上角,出口在右下角. 问题分析 首先要有一张迷宫地图,地图由两部分组成: (1)一是迷宫中各处的位置坐标, (2)二是迷宫各位置处的状态信息,即该处是墙还是路 所以,该迷宫地图可由一个二维数组来表示.数组的横纵坐标表示迷宫各处的位置坐标,数组元素表示各位置处的状态信息. 2.在这

教你看懂Code128条形码

首     页 条码控件 条码技术 条码新闻 合作伙伴 联系我们 常见问题 电话:010-84827961 当前位置:条形码控件网 > 条形码控件技术文章 > >正文 教你看懂Code128条形码 发布时间:2014-10-28 Code128码分成三类,即128A.128B.128C.它们的区别就是对应的字符表不一样. 那么Code128码到底怎么读呢?请看下面的图: 从左往右是黑白相间的条形码,黑的叫“条”(B),白的叫“空”(S). 如果你仔细看,条和空都有4种不同的宽度.我们将它

10分钟教你用python打造贪吃蛇超详细教程

10分钟教你用python打造贪吃蛇超详细教程 在家闲着没妹子约, 刚好最近又学了一下python,听说pygame挺好玩的.今天就在家研究一下, 弄了个贪吃蛇出来.希望大家喜欢. 先看程序效果: 01 整体框架 平台:pycharm 关于pygame的安装这里就不在赘述,大家自行上网找合适自己的版本的安装即可.关于pygame模块知识会穿插在下面代码中介绍,用到什么就介绍什么.这里就不统一介绍了. 整个程序由于是调用了大量的pygame里面的库函数,所以也非常简单(卧槽你这不是调包侠嘛).也就

【python】10分钟教你用python如何正确把妹

前言 今天没妹子约,刚好朋友研究一下python.让他教大家如何用神奇的python打造一个把妹神器吧.看完这个,你们就能走向人生巅峰,迎娶白富美啦. 我知道你们想看看效果 当然啦,这只是测试版的效果,真正的版本可比这个厉害多啦.不过作为一个直男,另一个男的给小编发这个测试感觉还是有点怪怪的哈. 文:吉柏言 暑假来了,各位又不得不和男女朋友暂时分开2个月了!!长达两个月的时间里不能相见,你可知我多想你啊,想知道你的城市下雨了吗,想知道你带伞了吗,想知道你长什么样,想知道你叫啥,咳咳,单身汪小编表

10分钟教你用Python玩转微信之抓取好友个性签名制作词云

01 前言+展示 各位小伙伴我又来啦.今天带大家玩点好玩的东西,用Python抓取我们的微信好友个性签名,然后制作词云.怎样,有趣吧~好了,下面开始干活.我知道你们还是想先看看效果的. 后台登录: 词云: 02 环境准备 Python版本:3.6.0系统平台:Windows 10 X64IDE:pycharm 相关模块:re模块:itchat模块:jieba模块:import matplotlib.pyplot模块:wordcloud模块:以及一些Python自带的模块. 03 获取个性签名 首

10分钟教你拥有可编程QQ机器人

10分钟教你拥有可编程QQ机器人 --酷Q Air教程 --BY dudujerry 要想阅读本篇教程,读者需要基本的C++知识以及Visual Studio 2010/2015/2017 首先,需要从官方网站下载软件 https://cqp.cc/t/23253 .下载后从"下载"/"Download"文件夹中找到其压缩包.解压. 然后,我们从Github中下载酷Q的SDK. https://github.com/CoolQ/cqsdk-vc 解压发现.sln,是

【 全干货 】5 分钟带你看懂 Docker !

欢迎大家前往腾讯云社区,获取更多腾讯海量技术实践干货哦~ 作者丨唐文广:腾讯工程师,负责无线研发部地图测试. 导语:Docker,近两年才流行起来的超轻量级虚拟机,它可以让你轻松完成持续集成.自动交付.自动部署,并且实现开发环境.测试环境.运维环境三方环境的真正同步.本文从Docker定义,作用,技术架构,安装和使用等全方位带你看懂Docker. Docker是啥? 打开翻译君输入Docker 结果显示码头工人,没错!码头工人搬运的是集装箱,那么今天要讲的Docker其操作的也是集装箱,这个集装