App.js:
var express=require("express");
var mongo=require("./mongo/mongo");
var app=new express();
app.set("view engine","ejs");
app.use(express.static("static"));
app.get("/",function(req,res){
mongo.findAll("user",{},function(result){
console.log(result);
res.render("index");
});
});
app.get("/insertOne",function(req,res){
var data={
name:"花花",
age:14,
sex:"女",
address:"上海市"
}
mongo.insertOne("user",data,function(result){
res.send(result.ok.toString());
});
});
app.get("/insertMany",function(req,res){
var data=[
{
name:"首爾",
age:17,
sex:"女",
address:"北京市"
},
{
name:"鼕鼕",
age:29,
sex:"男",
address:"成都市"
}
]
mongo.insertMany("user",data,function(result){
res.send(result.ok.toString());
});
});
app.get("/deleteOne",function(req,res){
mongo.deleteOne("user",{name:"花花"},function(result){
console.log(result);
res.send("刪除成功!");
});
});
app.get("/updateOne",function(req,res){
mongo.updateOne("user",{name:"首爾"},{$set:{age:32}},function(result){
res.send("修改成功!");
});
});
app.get("/paging",function(req,res){
mongo.paging("user",0,4,{name:1},function(result){
console.log(result);
res.send("獲取數據成功!");
});
});
app.listen(8100);
mongo.js:
var mongoClient=require("mongodb").MongoClient;
var setting=require("./settings");
//連接數據庫
var connect=function(callback){
mongoClient.connect(setting.url,{ useUnifiedTopology: true },function(error,client){
if(error) throw error;
callback(client);
});
}
//查找方法
exports.findAll=function(tablename,data,callback){
connect(function(client){
var dbbase=client.db(setting.dbname);
dbbase.collection(tablename).find(data).toArray(function(err,res){
if(err) throw err;
callback(res);
client.close();
});
});
}
//增加單條數據
exports.insertOne=function(tablename,data,callback){
connect(function(client){
var dbbase=client.db(setting.dbname);
dbbase.collection(tablename).insertOne(data,function(err,res){
if(err) throw err;
callback(res.result);
client.close();
});
});
}
//增加多條數據
exports.insertMany=function(tablename,data,callback){
connect(function(client){
var dbbase=client.db(setting.dbname);
dbbase.collection(tablename).insertMany(data,function(err,res){
if(err) throw err;
callback(res.result);
client.close();
});
});
}
//刪除單條數據
exports.deleteOne=function(tablename,data,callback){
connect(function(client){
var dbbase=client.db(setting.dbname);
dbbase.collection(tablename).deleteOne(data,function(err,res){
if(err) throw err;
callback(res);
client.close();
});
});
}
//修改單條數據
exports.updateOne=function(tablename,data,set,callback){
connect(function(client){
var dbbase=client.db(setting.dbname);
dbbase.collection(tablename).updateOne(data,set,function(err,res){
if(err) throw err;
callback(res);
client.close();
});
});
}
//數據分頁
exports.paging=function(tablename,now,num,sort,callback){
connect(function(client){
var dbbase=client.db(setting.dbname);
dbbase.collection(tablename).find().skip(now).limit(num).sort(sort).toArray(function(err,res){
if(err) throw err;
callback(res);
client.close();
});
});
}
settings.js:
module.exports={
url:"mongodb://127.0.0.1:27017",
dbname:"chat"
}
目錄: