티스토리 뷰

반응형

 

웹사이트 기능 만들기 기본

 

1. 서버로 데이터 전송할 수 있는 UI 만들고

2. 서버에 원하는대로 정보를 처리해주면 됨

 

form에 입력한 정보 어딘가에 저장해야됨(엑셀은 많은 데이터 저장 불가)

Database에 저장해야됨

 

 

자료 저장하려면 일단 MongoDB 가입해서 폴더, 파일 만들고

server.js에서 MongoDB 에 접속할 수 있게 해야함

 

 

server.js 에서 DB에 접속하려면

 

1. 라이브러리 설치

npm install mongodb

 

2. 상단 코드 추가

const MongoClient = require('mongodb').MongoClient;

 

 

3. 하단에 코드 입력

var db;
MongoClient.connect('mongodb+srv://kdb:6743@cluster0.bawt6ey.mongodb.net/?retryWrites=true&w=majority', { useUnifiedTopology: true }, function (에러, client) { //useUnifiedTopology 워닝메세지 제거해줌

 
    if (에러) return console.log('에러') //에러 설명
    
    db = client.db('todoapp'); //todoapp이라는 db로 접속해주세요~

    //내가 원하는 데이터 추가,삭제,수정할때 동일한 형식
    db.collection('post').insertOne({이름:'kim', 나이:20}, function (에러, 결과) {
        console.log('저장완료')
    });

	//서버 띄우는 코드
    app.listen(8080, function () {
        console.log('listening on 8080')
    });

})

DB에 접속이 완료되면

서버 띄우는 코드 실행해주세요~

 

첫번째 줄 콜백함수 안에 있는 에러는

에러 발생 시 어떤 에러인지 알려주는 파라미터

 

db.collection('post')란 collection 중에 post를 선택한다는 뜻  *collection은 폴더 안의 파일을 의미

뒤에 insertOne을 붙이면 object 자료형식으로 추가 가능

insertOne 함수는 insertOne(저장할 데이터, 콜백함수)로 쓰면 됨 *저장할 데이터 형식은 Object 자료형

db.collection('post').insertOne('저장할 데이터', function(에러, 결과){
	console.log('저장완료')
});

위의 코드는 이해하지 말고 그냥 외워야함

 

 

ex)

→컬렉션이 test인 파일에 이름:kdb, 나이:2 를 넣어주세요

 

 

 

 

 

결과

 

 

 

db.collection('post').insertOne()

위의 코드 중요!

이 패턴으로 나중에 데이터 추가, 삭제, 수정함

 

 

 

근데 MongoDB에서 _id가 자동으로 부여되어있음

자료저장시 id를 적지 않아서 임시id가 자동으로 부여된 것

 

* 자료저장시엔 _id로 반드시 id값 부여하기!!!!

 

반응형
댓글
반응형
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
TAG more
«   2025/01   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함