本文介绍node.js项目中mongodb数据库的使用方法,相关目录结构是项目中的目录。代码先不上传,只介绍方法。
数据库使用mongodb
mongodb的服务端的安装方法是在ubuntu执行
apt-get instal mongodb
,安装成功之后执行/etc/init.d/mongodb start
启动。nodejs中需要添加的组件是mongoose,里面内置了mongodb客户端的组件。
目录文件
- /config/mongoose.js 调用数据库的入口,连接数据库
- /config/db_url.js 数据库的地址
- /model/ 封装数据库数据模型
数据库的API
1、/config/db_url.js中指定数据库地址
module.exports={
mongodb:"mongodb://localhost/company_website"
}
2、/model/目录中各个js文件定义数据库的数据模型,如demo.js
var mongoose=require('mongoose');
//新建模型
var demo=new mongoose.Schema({
username:String,
password:String,
status:String
});
//对外封装属性接口
mongoose.model('Demo',demo);
3、/config/mongoose.js中调用/config/db_url.js,并连接数据库,加载数据库数据模型
var mongoose=require('mongoose');
var config=require('./db_url.js');
//初始化函数
module.exports=function(){
var db=mongoose.connect(config.mongodb);
require('../model/demo.js');
return db;
}
4、在app.js中调用/config/mongoose.js开始初始化数据库连接
var mongoose=require('./config/mongoose.js');
//初始化
var db=mongoose();
5、数据库查询/增加/删除,以demo为例
var mongoose=require('mongoose');
var Demo=mongoose.model('Demo');
//查询username
var username="admin";
User.findOne({username:username},function(err,doc){
if(err){
console.log('error');
}
else if(doc==null){
console.log('not exist');
}
else{
//修改查询到的对象的属性
doc.status='1';
doc.save(function(err){
if(err){
console.log('error');
}else{
console.log('success');
}
})
}
});
//创建demo对象
var demo=new Demo(
{
username:username,
password:password,
status:'0'
}
);
Demo.create(demo,function(err,doc){
if(err){
console.log('error');
}
console.log('success');
});
//删除对象
var id="xxxx";
Demo.remove({_id:id},function(err,doc){
if(err){
console.log('error');
}else{
console.log('success');
}
});