728x90
๋ฐ์ํ
๐ก ์ค์ต ํฌ์ธํธ!
- MongoDB ์ post ๋ผ๋ ์ด๋ฆ์ collection ์ ์์ฑํ์ฌ ํ ์คํธ๋ก name ์ด seoyun, age ๊ฐ 30 ์ธ ๋ฐ์ดํฐ๋ฅผ ์ถ๊ฐํด๋ณด์๋ค.
- ํ ์คํธ ์ฝ๋๋ฅผ ํ ๋๋ก ํ์ฌ, /add ๊ฒฝ๋ก๋ก POST ์์ฒญํ ๊ฒฝ์ฐ ํผ์ ์ ๋ ฅ๋ ๋ฐ์ดํฐ๋ฅผ DB ์ ์ถ๊ฐํ๋ ์ฝ๋๋ฅผ ์ง๊ณ MongoDB ์์ ํ์ธํด๋ณด์๋ค.
๐ Database / collection ๋ง๋ค๊ธฐ
1. MongoDB Atlas ๋ฉ์ธ ๋์๋ณด๋์์ Browse Collections ๋ผ๋ ๋ฒํผ ํด๋ฆญ
2-1. Add My Own Data ๋ฒํผ ํด๋ฆญ
2-2. Add My Own Data ๋ฒํผ์ด ์๋ ํ๋ฉด์ด ์๋๋ผ ์๋์ ๊ฐ์ด ํ๋ฉด์ด ๋ฌ๋ค๋ฉด Create Database ๋ฒํผ ํด๋ฆญ
3. Database name, Collection name ์ ์ ์ ํ๊ฒ ์ ํด์ค ํ Create ๋ฒํผ ํด๋ฆญ
๐ ํ ์คํธ ์ฝ๋ ์์ฑ ๋ฐ DB ํ์ธํ๊ธฐ
๐ค JavaScript ๋ก ์ฝ๋์ง์ DB ์ ํต์ ํด๋ณด๊ธฐ
var db;
MongoClient.connect('mongodb+srv://admin:๋น๋ฐ๋ฒํธ๋๋น๋ฐ@cluster0.e8wvg.mongodb.net/myFirstDatabase?retryWrites=true&w=majority', function(err, client){
if(err) {return console.log(err)};
db = client.db('app_todo');
// post ๋ผ๋ db.collection ์ name ์ด seoyun, age ๊ฐ 30 ์ธ ๋ฐ์ดํฐ ์ถ๊ฐํด๋ณด๊ธฐ
// ์ด ๋ถ๋ถ ์ฝ๋๋ ์๋ ์ฝ๋๋ธ๋ญ์์ ํ์ธ
app.listen(8080, function(){
console.log('listening on 8080');
});
})
- ํ์ด์ง ์ ์ฒด์์ ์ฌ์ฉํ ์ ์๋ ์ ์ญ ๋ณ์ db ๋ฅผ ๋ง๋ค์ด์ค๋ค.
var db; - client.db('app_todo') ํจ์๋ฅผ ์ฌ์ฉํ์ฌ app_todo ๋ผ๋ Database ์ ์ ์ํด๋ฌ๋ผ๋ ๋ช
๋ น์ ํด์ค๋ค.
db = client.db('app_todo'); - ํ
์คํธ๋ก post ๋ผ๋ db.collection ์ name ์ด seoyun, age ๊ฐ 30 ์ธ ๋ฐ์ดํฐ ์ถ๊ฐํด๋ณด์๋ค.
- ๋จผ์ , db.collection ์์ post ๋ฅผ ์ ํํ๋ค.
db.collection('post') - post ์ insertOne() ํจ์๋ฅผ ์ฌ์ฉํ์ฌ ์๋ฃ๋ฅผ ์ถ๊ฐํ๋ค.
insertOne(์ถ๊ฐํ ์๋ฃ, ์ฝ๋ฐฑํจ์) - ์ถ๊ฐํ ์๋ฃ๋ Object ํ์์ด์ด์ผ ํ๋ค.
{name : 'seoyun', age : 30}
- ๋จผ์ , db.collection ์์ post ๋ฅผ ์ ํํ๋ค.
- ์์ ๋ด์ฉ์ ์ฝ๋๋ก ์์ฑํ๋ฉด ์๋์ ๊ฐ๋ค.
db.collection('post').insertOne({name : 'seoyun', age : 30}, function(err, result){
// ์ ์์ ์ผ๋ก ์๋ฃ๊ฐ ์ถ๊ฐ๋์๋ค๋ฉด console ์ '์ ์ฅ ์๋ฃ' ๋ฌธ๊ตฌ ๋์ฐ๊ธฐ
console.log('์ ์ฅ ์๋ฃ');
});
๐ค MongoDB ์์ DB ์ ์ฅ ํ์ธํ๊ธฐ
๐ ํผ์์ ๋ฐ์ดํฐ ๊ฐ์ ธ์ค๋ ์ฝ๋ ์์ฑ ๋ฐ DB ํ์ธํ๊ธฐ
- ํ ์คํธ ์ฝ๋๋ฅผ ํ ๋๋ก ํ์ฌ, ๋ด์ฉ์ ์ด์ง ๋ฐ๊พธ์ด ๊ธ์ฐ๊ธฐ ํ์ด์ง์์ ํผ์ ๋ด์ฉ์ ์ ๋ ฅํ ํ Submit ๋ฒํผ์ ํด๋ฆญํ๋ฉด ํผ์ ์ ๋ ฅ๋ ๋ด์ฉ์ ๋ฐ์ดํฐ๊ฐ DB ์ ์ ์ฅํ ์ ์๋๋ก ์ฝ๋๋ฅผ ์ง๊ณ DB ์์ ํ์ธํด๋ณด์๋ค.
๐ค JavaScript ๋ก ์ฝ๋์ง๊ธฐ
// ๋๊ตฐ๊ฐ๊ฐ /add ๊ฒฝ๋ก๋ก POST ๋ฅผ ์์ฒญํ๋ฉด
app.post('/add', function(req, res){
res.send('์ ์ก์๋ฃ');
// ํผ์ ์
๋ ฅ๋ ๋ฐ์ดํฐ๊ฐ db.collection ์ค post ์ ์ ์ฅ๋๋ค.
db.collection('post').insertOne({ํ ์ผ: req.body.content, ๋ง๊ฐ์ผ : req.body.date}, function(err, result){
console.log('๋ฐ์ดํฐ ์ ์ฅ ์๋ฃ!')
})
})
๐ค ๊ธ์ฐ๊ธฐ ํ์ด์ง์์ ํผ์ ๋ฐ์ดํฐ ์ ๋ ฅํ๊ธฐ
๐ค MongoDB ์์ DB ์ ์ฅ ํ์ธํ๊ธฐ
728x90
๋ฐ์ํ
'[๊ฐ๋ฐ] Practice > Node.js MongoDB' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[Node.js / MongoDB] ๊ฒ์๋ฌผ๋ง๋ค ๋ฒํธ ๋ฌ๊ธฐ (0) | 2022.03.11 |
---|---|
[Node.js / MongoDB] HTML ์ DB ๋ฐ์ดํฐ ๋ฃ์ด๋ณด๊ธฐ (0) | 2022.03.11 |
[Node.js / MongoDB] MongoDB ์ ํ ํ๊ธฐ (0) | 2022.03.11 |
[Node.js / MongoDB] POST ์์ฒญํด๋ณด๊ธฐ (0) | 2022.03.11 |
[Node.js / MongoDB] Bootstrap ์ ์ด์ฉํด ๋น ๋ฅด๊ฒ UI ๊ฐ๋ฐํด๋ณด๊ธฐ (0) | 2022.03.11 |