MongoDB(芒果数据库)学习(四)———Mongoose的模块化

MongoDB(芒果数据库)学习(四)———Mongoose的模块化

一、介绍

因为在之前的基础介绍中,每次对数据库操作;
在node中都需要连接数据库,而连接数据库的js文件重复执行比较麻烦,
而node支持提倡模块式开发。
因此本章讲解,让连接数据库模块脱离开;
并且,调用其他的Model模块。

二、连接数据库模块

以往的代码连接数据库时都需要与package.json目录同级才可以rundoce并对数据库操作。

  1. 因此我们将其分离出来,首先创建server文件夹。
    MongoDB(芒果数据库)学习(四)———Mongoose的模块化_第1张图片
  2. 在文件夹中创建conn_mongodb.js文件
    此模块一运行就看可以连接到数据库
    我们只需要写入连接数据库代码即可,还可加一个数据库状态的监听。
    引入数据库
    MongoDB(芒果数据库)学习(四)———Mongoose的模块化_第2张图片
    var mongoose = require("mongoose");
    mongoose.connect("mongodb://127.0.0.1/mongoose_test");
    mongoose.connection.once("open",function(){
    	console.log("数据库连接成功");
    })
    
  3. 建立models文件夹在其中建立emps.js模型对象文件
    此模块一执行
    我们通过,预先规定好的存储数据的格式,来操作数据
 	var mongoose = require("mongoose");

	var empSchema = mongoose.Schema;

	//创建Schema(模式)对象
	var dateSchema = new empSchema({
    	name:String,
    	age:Number,
    	gender:{
       	 type:String,
        default:"female"
    },
    address:String
	})
		var empModel = mongoose.model("emp",dateSchema);
		module.exports = empModel;

我们将Schemas对象抛出,来供其他文件使用
module.exports = empModel;
4.整合模块 在package.json目录新建manger.js文件
MongoDB(芒果数据库)学习(四)———Mongoose的模块化_第3张图片

require("./server/conn_mongodb");
var staff =require("./models/emps");

staff.find({},function(err,docs){
   if(!err){
       console.log(docs);
   }
}) 

开头我们引用了两个模块,
其中一个是连接数据库
另一个是,模型对象。
现在当我们执行此模块。
MongoDB(芒果数据库)学习(四)———Mongoose的模块化_第4张图片
我们就查询出了数据库的所有数据,在以后的emp、stall、dept等表,都可以新建模型对象文件,来操作数据,因此Mongoose的模块化很方便。

三、结语

mongodb的入门基础,以上就都已经介绍完毕。(只是基础)
博客目的为了学习。

做事不需要人人都理解,只需尽职尽责,问心无愧;
做人不需要人人都喜欢,只需尽心尽力,心安理得。

MongoDB(芒果数据库)学习(四)———Mongoose的模块化_第5张图片

你可能感兴趣的:(mongodb,mongodb)