| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 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 |
- 백엔드개발자
- TypeScript
- 스프링부트
- JS
- spring boot
- frontend
- 타입스크립트
- 웹개발자
- spring boot security
- 프론트엔드
- 정보처리기사 실기
- 큐넷
- security
- TS
- Front-End
- JWT
- 백엔드
- 수제비
- spring
- Redux
- 자바스크립트
- Node.js
- It
- VUE
- 정보처리기사
- JavaScript
- Authentication
- React
- useState
- 리액트
- Today
- Total
솔적솔적
Mongoose는 무엇인가, mongoDB검색하면 자주 등장하던데 써야하나? 본문
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 |