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" }目录: