솔적솔적

Mongoose는 무엇인가, mongoDB검색하면 자주 등장하던데 써야하나? 본문

Front-end/node.js + mongoDB

Mongoose는 무엇인가, mongoDB검색하면 자주 등장하던데 써야하나?

카드값줘체리 2022. 9. 14. 03:20

Mongoose란 몽고DB에 데이터를 넣었다가 뺐다가할 때 선택할 수 있는 방법이 2가지있는데, 

두가지 라이브러리를 사용할 수 있는데

 

1. MongoDB Native Driver

2. Mongoose

 

이 두개 중에 하나를 사용할 수 있다.

 

이 둘의 관계는

MonoDB Native vs Mongoose

자바스크립트 와 제이쿼리 같은 관계라고 생각하자.

 

제이쿼리 없이 쌩자바스크립트로도 개발을 할 수 있지않은가? (원래 자바스크립트로도 당연~히 기능 구현할 수 있지만)

쌩MonoDB Native 로 데이터입출력을 할 수 있는데 몽구스를 사용하면 더 직관적이여서 편하고 쉽게 사용할 수 있다.

또한 기본적인 validation을 쉽게할 수 있다.

 

🎈여기서 validation이란?

우리가 아이디 입력란을 만들어서 전송버튼을 누르면 아이디가 서버에 전송이되고 DB에 저장이 되도록 코드를 다 짜놨다고 쳐보자. 근데 아이디input란에  한글을 입력했다치자. 한글아이디는 본 적없잖아. 한글 아이디가 있다? 안됀다.라고 쳐내야하는데 그것을 말하는 것. 간단하게 말하면 DB에 저장하기 전에 데이터 검증을 하는 작업을 말한다.

 

근데 왜 Mongoose거의 다 사용하냐라고 한다면

예전엔 MongoDB Native가 되게 좀 불편한 점이 많아가지고 몽구스를 반필수적으로 사용했어야했다한다. 그래서 몽구스를 사용하는 사람들이 아직까지 많다고...

 

지금은 MongoDB Native Driver만으로도 가능하다는!

validation도 몽구스 처럼 할 수있는데,  로컬PC에서 조작을 할 수 있는 프로그램이 필요하다(MongoDB Compass 을 다운)

그 안에 validation 메뉴에 들어가서 입력, 정의가능하다.

https://www.mongodb.com/try/download/compass

 

MongoDB Compass을 설치하기 귀찮다면

터미널에서 원격으로 접속할 수 있는 툴도 있다. 👉 MongoDB Shell(Compass와 동일, 터미널에서 DB접속가능)

 

또한 Mongoose 라이브러리를 설치해서 사용할 때 MongoDB Native Driver와는 DB입출력 문법이 달라진다.

 

 

 

'Front-end > node.js + mongoDB' 카테고리의 다른 글

Nodemon으로 자동화하기 그리고 이걸 왜 할까?  (0) 2022.09.05
node.js + 망고DB  (0) 2022.09.05