05_Mongooes 秒速五厘米 2024-04-24 20:58 1阅读 0赞 ## Mongooes ## Mongoose是通过Node来操作MongoDB的一个模块。是基于Node.js的第三方模块。 ## 一、Node.js安装 ## ### 1.解压 ### ![在这里插入图片描述][b08c9bc45690445c858115fbeccf0b3f.png_pic_center] ### 2.创建文件夹 ### 解压路径下,创建两个文件夹 * node\_global:全局安装位置 * node\_cache:缓存 ![在这里插入图片描述][2d48196fcd024e419ce009e1226aca83.png_pic_center] ### 3.配置 ### #### 配置环境变量 #### 在path路径中添加环境变量 ![在这里插入图片描述][17814e4d96ab417988d26121431e9015.png_pic_center] #### 测试1 #### cmd执行命令: node -v npm -v ![在这里插入图片描述][dfea82871baa456f95989c443d0ed18c.png_pic_center] #### 配置全局安装位置,缓存路径 #### cmd下输入两个命令: npm config set prefix "global文件夹的全路径" npm config set cache "cache文件夹的全路径" 例如:npm config set cache "E:\- Nodejs\node-v12.18.1-win-x64\node_cache" #### 测试2 #### cmd下输入命令 npm install webpack -g 更新npm为最新版本 npm install npm -g ![在这里插入图片描述][63eda20e61314adaa77b79d31408fe77.png_pic_center] ## 二、安装mongoose ## npm install mongoose -g 安装到全局目录下node\_global ## 三、Mongoose ## Mongoose是通过Node来操作MongoDB的一个模块。是基于Node.js的第三方模块。 Mongoose是一个对象文档模型库,它封装了Node原生的MongoDB操作。 ### 好处 ### * 可以为文档创建一个模式结构(Schema) * 可以对模型中的队形/文档进行验证 * 数据可以进行类型转换 * 操作更简单容易 ### 对象 ### MongoDB中数据库,集合,文档。 Collection中包含文档 Document文档是BSON 同一个Collection中可以有多个Document,多个Document的结构可以不一样。 ![在这里插入图片描述][35c1d9448ab4460b8df16ec2df6e2acf.png_pic_center] * Schema:模式对象 * 定义并且数据库中的文档结构,集合的结构,保证同一个集合中所有的文档结构是一致的 * Model:模型对象 * 表示集合,相当于数据库中的Collection * Document:文档对象 * 相当于数据库中的Document,表示一个具体的文档 **顺序:** Schema -> Model -> Document ## 四、使用 ## Mongoose在安装会自动安装驱动。 ### 1.引入Mongoose模块 ### let mongoose = require("E:\\- Nodejs\\node-v12.18.1-win-x64\\node_golbal\\node_modules\\mongoose"); ### 2.连接 ### // 连接数据库 mongoose.connect('mongodb://localhost:27017/bookshop', {useNewUrlParser: true, useUnifiedTopology: true}); // 断开连接 mongoose.disconnect(); ### 3.监听数据连接情况 ### mongoose.connection.once("connected",function(){ console.log("数据库连接成功"); }); mongoose.connection.once("open",function(){ console.log("数据库open"); }); mongoose.connection.on("open",function(){ console.log("数据库open"); }); mongoose.connection.once("close",function(){ console.log("数据库关闭"); }); mongoose.connection.once("disconnected",function(){ console.log("数据库断开连接"); }); mongoose.connection.once("error",function(error){ console.log("数据库连接错误"+error); }); ### 4.Schema ### 模式对象 * 定义并且数据库中的文档结构,集合的结构,保证同一个集合中所有的文档结构是一致的 ### 5.数据库操作 ### ## 作业: ## 使用mongoose连接数据库,并创建集合,添加文档。 封装成一个js g(“数据库连接错误”+error); \}); ## 4.Schema 模式对象 - 定义并且数据库中的文档结构,集合的结构,保证同一个集合中所有的文档结构是一致的 ## 5.数据库操作 # 作业: 使用mongoose连接数据库,并创建集合,添加文档。 封装成一个js [b08c9bc45690445c858115fbeccf0b3f.png_pic_center]: https://image.dandelioncloud.cn/pgy_files/images/2024/04/24/24749440acaf488bb3c68a6e1fb76977.png [2d48196fcd024e419ce009e1226aca83.png_pic_center]: https://image.dandelioncloud.cn/pgy_files/images/2024/04/24/469f4a45c1084a0089515d2bcb839213.png [17814e4d96ab417988d26121431e9015.png_pic_center]: https://image.dandelioncloud.cn/pgy_files/images/2024/04/24/0254dbbfd1f6442caa92305f258be5e4.png [dfea82871baa456f95989c443d0ed18c.png_pic_center]: https://image.dandelioncloud.cn/pgy_files/images/2024/04/24/145197fcc3c343118a4672b0bde09ff5.png [63eda20e61314adaa77b79d31408fe77.png_pic_center]: https://image.dandelioncloud.cn/pgy_files/images/2024/04/24/ccebe384588b48858258b383edd4d874.png [35c1d9448ab4460b8df16ec2df6e2acf.png_pic_center]: https://image.dandelioncloud.cn/pgy_files/images/2024/04/24/2c681c6c754f43d09e75c18744fe5404.png
相关 SpreadsheetGear Crack in 2021.05.05 SpreadsheetGear Crack in 2021.05.05 用于.NET的Spreadsheet Gear被描述为一个标准,企鹅578867473允许用户和开发 素颜马尾好姑娘i/ 2022年10月16日 02:59/ 0 赞/ 132 阅读
相关 day05 /\ 引用数据类型 Scanner类 nextInt()接收键盘输入,保证输入的是整数 next()接收键盘输入的字符串 String s 妖狐艹你老母/ 2022年04月24日 02:08/ 0 赞/ 161 阅读
相关 05 CheckBox 一:CheckBox:复选框 说明:一次性可以选择多个内容。 定义: java.lang.Object 偏执的太偏执、/ 2022年03月19日 02:40/ 0 赞/ 118 阅读
相关 05-09 初步拟定:用java语言打开图片,用c写算法。 还没看下载的程序,还不会用java打开图片,算法和java的接口…… 转载于:https://www.cnblogs.com 红太狼/ 2021年11月09日 01:56/ 0 赞/ 175 阅读
相关 activiti05 什么是流程实例 参与者(可以是用户也可以是程序)按照流程定义内容发起一个流程,这就是一个流程实例。是动 态的。 流程定义部署在 activ 客官°小女子只卖身不卖艺/ 2021年10月23日 15:38/ 0 赞/ 51 阅读
相关 day05 回顾 所有的IT知识都时候依托以OSI七层模型(TCP/IP四层); 协议:(规定) 应用层协议:http https(B/S) ssh telnet smtp pop 悠悠/ 2021年10月23日 11:52/ 0 赞/ 239 阅读
相关 day05 1. 格式化输出的三种方式 name = 'Nick' height = 180 weight = 140 "My name is 'Nick', my hei 今天药忘吃喽~/ 2021年10月19日 19:28/ 0 赞/ 195 阅读
相关 05 数组 声明一个变量就是在内存空间划出一块适合的空间 声明一个数组就是在内存中划出一串连续的空间 数组是相同类型数据的有序集合. 相同类型的若 逃离我推掉我的手/ 2021年10月19日 04:46/ 0 赞/ 218 阅读
相关 前端05(2021/05/26) 文章目录 简介 JQuery核心函数 传入参数为函数时 传入参数为html字符串时 传入参数为选择器字符串时 落日映苍穹つ/ 2021年09月25日 09:34/ 0 赞/ 191 阅读
还没有评论,来说两句吧...