mongodb是非關(guān)系型數(shù)據(jù)庫的代表,在前端時(shí)代LAMP是黃金搭檔,在現(xiàn)在這個時(shí)代MEAN已經(jīng)上線(Mongo DB Express Angular/react Nodejs)
mongodb安裝脱柱、配置
可以使用docker安裝,下載mongoDB鏡像,mongo-express可視化圖形界面可以直接訪問审洞,安裝完成之后查看
首先進(jìn)入docker 執(zhí)行 docker ps -a 查看當(dāng)前安裝的鏡像
執(zhí)行? docker exec -it brave_jepsen bash? 進(jìn)入mongodb
首先執(zhí)行mongo來進(jìn)入命令行的界面 后面就可以執(zhí)行命令了 show dbs? 中 admin config local三個數(shù)據(jù)庫是系統(tǒng)內(nèi)置的? ?執(zhí)行 use test 切換test數(shù)據(jù)庫,這時(shí)候只是切換過來待讳,但是沒有創(chuàng)建test數(shù)據(jù)庫预明,執(zhí)行 db.fruits.save({name:'apple',price:3})? 插入一條數(shù)據(jù)
// 條件查詢? ? db.fruits.find({price:5})? ? ?db.fruits.find({price: {$lte: 10}})? ??
// 得到當(dāng)前db的所有聚集集合? ? db.getCollectionNames()
直接就可以查詢出結(jié)果 ,這是mongodb自己的一個特點(diǎn)? 查看更多mongo命令行操作(https://www.cnblogs.com/wywnet/p/5102946.html)
mongodb原生驅(qū)動
參考資料:菜鳥文檔?https://www.runoob.com/mongodb/mongodb-create-database.html
安裝mongodb?模塊: npm install mongodb --save
連接mongodb
實(shí)戰(zhàn)mongodb的開發(fā)
創(chuàng)建market瓜果超市項(xiàng)目? 創(chuàng)建models文件夾將我們的db.js放在這里創(chuàng)建conf.js
創(chuàng)建db.js
這時(shí)候我們需要寫入test數(shù)據(jù)
數(shù)據(jù)后端準(zhǔn)備好以后耙箍,我們構(gòu)建一個前端express服務(wù)
利用el-ui做一個簡單的展示頁面
ODM - Mongoose
概述:優(yōu)雅的Nodejs對象文檔模型 object document model?
Mongoose有兩個特點(diǎn)
通過關(guān)系型數(shù)據(jù)庫的思想來設(shè)計(jì)非關(guān)系型數(shù)據(jù)庫
基于mongodb驅(qū)動撰糠,簡化操作? ? 安裝: npm install mongoose -S
我們一起看一下mongoose的寫法和其他的數(shù)據(jù)庫有什么不同,首先連接數(shù)據(jù)庫成功之后辩昆,如果有一個表阅酪,我們可以通過這個表直接建一個對象 Schema,它有什么字段,我不需要直接去建庫术辐,直接定義文件的結(jié)構(gòu)砚尽,它的增刪改查和mogondb非常類似
https://www.cnblogs.com/xiaohuochai/archive/2018/04/11/8794687.html
使用mongo-express管理mongodb數(shù)據(jù)庫
首先,全局安裝 mongo-express 包?npm install -g mongo-express?
接著辉词,使用如下命令來找到mongo-express的安裝目錄? ?npm list -g mongo-express
然后進(jìn)入該目錄下的node_modules/mongo-express目錄中必孤,找到config.js文件,復(fù)制該文件瑞躺,并命名為config.default.js文件
接下來敷搪,修改配置文件config.js
if (process.env.VCAP_SERVICES) {
? vardbLabel ='mongodb-2.4';
? varenv = JSON.parse(process.env.VCAP_SERVICES);
? if (env[dbLabel]) {
? ? mongo = env[dbLabel][0].credentials;
? }
} else {
? mongo = {
? ? db:'blogs',
? ? host:"118.1.1.1",
? ? port:27017,
? ? ssl:false,
? ? username:'blogs',
? ? password:'123456',
? ? url:"mongodb://118.1.1.1:27017/blogs",
? ? // setting the connection string will only give access to that database
? ? // to see more databases you need to set mongodb.admin to true or add databases to the mongodb.auth listconnectionString: process.env.ME_CONFIG_MONGODB_SERVER ?'' : process.env.ME_CONFIG_MONGODB_URL,
? };
}
啟動
由于mongo-express是全局安裝,則可以在任何目錄下幢哨,使用mongo-express命令來啟動應(yīng)用
mongo-express
輸入完成后赡勘,控制臺輸出如下信息
Mongo Express server listening at http://localhost:8081basicAuth credentials are"admin:pass", itisrecommended you changethisinyour config.js!Database connected
Connecting to blogs...
Database blogs connected
在地址欄中,輸入localhost:8081捞镰,以用戶名:admin闸与,密碼:pass的驗(yàn)證即可登錄