Node连接MongoDB之mongosse
来源:互联网 发布:java 重载父类的方法 编辑:程序博客网 时间:2024/06/03 17:10
Mongoose是在node.js异步环境下对mongodb进行便捷操作的对象模型工具
使用首先你得装上node.js和mongodb
这里不单独来介绍下面主要来介绍 利用 Mongoose来进行mongodb数据库操作并介绍一些简单的 API
1,首先安装Mongoose
npm install Mongoose 成功安装后 通过 require('mongoose ') 来使用
2,创建mongoDB连接
创建连接的意义就是和你远程mongodb服务器进行连接或者是本地测试服务器连接,进而进行操作。
创建一个db.js 进行连接
connnction中有很多事件,不止这几个事件有兴趣可以去研究一下 此时我们就可以单独去执行db.js 去看下是否正确连接到了数据库,node db.js 就可以执行 出现打印我们的数据库连接 就证明已经连接上了 我们可以往下进行操作了
当然这种方法是最简单的通过地址字符串的形式进行连接,还有一些比较复杂的形式,比如密码连接 数据库设置连接等,有用的可以查一下api文档http://mongoosejs.com/docs/api.html#index-js
3,通过schema创建关系表
scheme简单来说就是定义表的结构都有什么字段是什么类型,可以理解为表结构的定义,每一个scheme都可以映射到对应mongodb中的一个连接,白话一点就是一张表,不具备操作表的能力
首先创建schema.js 引入创建连接的db,js 通过new构造函数的形式进行new 一个新的schma 那schema首先是创建好后才会有的 然后去定义字段名类型,这里不仅可以定义字段 还可以定义一下静态方法 这里不详细说有兴趣的可以查阅一下文档
4,创建model 进行数据库操作
model是schema生成出来的模型,模型是有方法,可以对数据库进行操作
创建model.js 针对于不同项目需求,文件是可以写在一起的如果项目很大建议还是讲每一步分开,这样比较好理解,项目结构也是鲜明的。
引入db.js 引入schema 之后将 mongoose.model 曝露出去,这里详细说下model 的参数 第一个参数是连接的数据库,这里首字母要大写,再创建数据库时 要用小写复数形式 如goods users 等 再连接时 第一个参数 写大写单数Good User 这样会去自动查找goods users 库 ,如果不放心可以写第三个参数,数据库的真实名字 mongoose.model('Good',productSchema,'goods')
那第二个参数就是要传入表结构了 这样模型就建好了 ,此时模型上就是有方法可以进行数据库操作了
5,页面上引入模型进行数据库查询等操作
此时goods就是代表了模型 可以通过goods进行数据库操作
Model.save([callback]) 保存插入数据 在新增,或者保存修改的数据都调用save 方法
Model.find(onditions, [fields], [options], [callback]) //条件查询 第二个参数可以写查询条件 如果传入空对象就是表示查询全部
Model.findOne([options], [callback]) //查询一条数据
Model.findByID([options], [callback]) //查询根据ID
Model.update(conditions, update, [options], [callback]) //更新数据
Model.findByIdAndUpdate(id, [update], [options], [callback] //根据ID查找并且进行修改
Model.findOneAndUpdate([conditions], [update], [options], [callback]) //找到一条记录并更新
Model.remove(conditions, [callback]) //删除指定文档
Model.findByIdAndRemove(id, [options], [callback]) //ID查找并删除
Model.findOneAndRemove(conditions, [options], [callback]) //找到一条记录并删除
Model.distinct(field, [conditions], [callback]) //去重
Model.findOne(conditions, [fields], [options], [callback]) //查找一条记录
Model.findOneAndRemove(conditions, [options], [callback]) //查找一条记录并删除
Model.findOneAndUpdate([conditions], [update], [options], [callback]) //查找一条记录并更新
在写查询条件时 这样去写
let params = {
salePrice: {
$gt: 100,
$lte: 500,
}
goods.find(params) 查询价格大于100小于等于500的所有数据
查询条件 有一些:
$or 或关系
$nor 或关系取反
$gt 大于
$gte 大于等于
$lt 小于
$lte 小于等于
$ne 不等于
$in 在多个值范围内
$nin 不在多个值范围内
$all 匹配数组中多个值
$regex 正则,用于模糊查询
$size 匹配数组大小
$maxDistance 范围查询,距离(基于LBS)
$mod 取模运算
$near 邻域查询,查询附近的位置(基于LBS)
$exists 字段是否存在
$elemMatch 匹配内数组内的元素
$within 范围查询(基于LBS)
$box 范围查询,矩形范围(基于LBS)
$center 范围醒询,圆形范围(基于LBS)
$centerSphere 范围查询,球形范围(基于LBS)
$slice 查询字段集合中的元素(比如从第几个之后,第N到第M个元素)
共享一个写分页的方法
goods.find({}).skip(n).limit(m) skip是默认跳过多少条,limit是截取多少条。那到这里mongoose的基本应用就介绍完了,希望对大家有所帮助
- Node连接MongoDB之mongosse
- node.js连接mongodb
- Node.js连接MongoDB。
- node连接Mongodb
- node 连接MongoDB
- node.js开发之express4.0使用mongoose连接mongodb
- node mongodb认证连接代码
- node js连接mongodb数据库
- Node 连接mongodb报错
- node.js之mongodb操作
- Node.js使用认证连接MongoDB示例
- 【Node JS】03. 连接数据库 - MongoDB
- node.js(express)连接mongoDB入门指导
- node.js+express连接mongodb数据库
- node.js通过权限验证连接MongoDB
- node 连接mongodb ---小白入门
- Node连接Mongodb以及CRUD操作
- node.js中连接mongodb数据库
- java-Layout(布局管理器)
- 使用redis做mysql的缓存
- HTML黑客帝国数据瀑布流
- Android开发之自定义View
- Android OTA 系统升级 笔记
- Node连接MongoDB之mongosse
- 自定义View简单案例-自绘控件
- Android开发之推送
- OpenCV FileStorage类的数据读写操作
- windows命令的使用
- 使用js WdatePicker插件实现整时分
- Android开发之加密解密
- Android第三方推送
- Android TV Leanback (八)(引导步骤)