NodeJS博客实战05_数据库连接和创建数据库模型类

1.数据库连接

连接mongodb数据之前现在在当前操作系统上安装mongodb数据库并开启,安装方法如下连接:

win10系统64位安装mongodb

Ubuntu16.04安装mongodb数据库

默认mongodb开启后端口为27017;

该博客项目中使用的是mongoose连接和操作mongo数据库,在app.js中先判断连接数据库是否成功,再执行端口监听防止连接失败继续执行以后的模块;

使用mongoose的connect方法连接数据库,第一个参数是数据库地址,第二个参数是连接状态返回函数

//应用程序的启动入口文件

//加载模块
var express = require('express'); //加载express模块
var swig = require('swig'); //加载模板处理模块
var app = express(); //创建app应用,相当于nodeJS的http.createService()
var mongoose = require('mongoose'); //加载数据库模块


//配置模板引擎
app.engine('html',swig.renderFile); //定义当前模板引擎,第一个参数:模板引擎名称,也是模板文件后缀;第二个参数:处理模板的方法
app.set('views','./views'); //设置模板文件存放的目录,第一个参数必须是views,第二个参数是目录
app.set('view engine','html'); //注册模板
swig.setDefaults({cache:false});//取消模板缓存

//根据不同的功能划分模块
app.use('/admin',require('./routers/admin'));
app.use('/api',require('./routers/api'));
app.use('/',require('./routers/main'));

mongoose.connect('mongodb://localhost:27017/blog',function(err){
	if(err){
		console.log("数据库连接失败");
	}else{
		console.log("数据库连接成功");
		app.listen(8081); //监听http请求
	}
});

启动项目,如代码没有问题则连接正常:


2.数据库模型类

创建数据库模型类之前需要创建数据表结构,使用moogoose的Schema方法创建数据库字段和类型

在schemas文件夹中创建users.js文件用创建用户表的结构,并将创建的表结构暴露出去供模型调用

//定义数据库表存储结构

//引入moogoose模块操作数据库
var mongoose = require('mongoose');

//定义用户表结构(字段和类型),并暴露出去
module.exports = new mongoose.Schema({
	username:String,//用户名
	password:String//密码
})

再来创建数据库模型类

与ThinkPHP的数据库模型类类似,通过操作模型类来操作数据库

在models里面创建User.js文件,使用moogoose的model方法创建数据库模型类,并将模型暴露出去

//创建一个User的模型类
//实际操作的是操作通过操作模型类来对数据库操作(类似于tp里面的模型)
var mongoose = require('mongoose');
var usersSchema = require('../schemas/users');

//mongoose的模型方法创建User模型,操作usersSchema,并暴露出去
module.exports = mongoose.model('User',usersSchema)

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值