mongoose 라는 도구를 이용해 데이터베이스에 연결할 예정입니다.<aside>
📌 `mongoose`는 MongoDB에 데이터를 쉽게 읽고 쓰게 해주는 JavaScript 라이브러리입니다. `mongoose`를 **ODM**(Object Document Mapper)이라고도 부릅니다.
</aside>
- ODM(Object Document Mapper)이란, JavaScript의 **객체(Object)**와 MongoDB의 **문서(Document)** 사이에서 ‘**매핑**’을 수행하는 도구입니다.
- 우리가 JavaScript 코드에서 작업하는 **객체(Object)**를 MongoDB 데이터베이스의 **문서(Document)**로 쉽게 **변환**하거나, 반대로 **문서를 객체로 변환**해주는 작업을 수행합니다.
- `mongoose`가 이런 **ODM**의 기능을 충실하게 잘 해주고 있기 때문에 우리는 **MongoDB**에 쉽게 데이터를 넣고 쓰고, 관리할 수 있게 되는것이예요3) mongoose의 문서(Document)란?mongoose의 컬렉션(Collection)이란?const UsersSchema = new mongoose.Schema({
name: String, // 문자열 타입입니다.
age: Number, // 숫자 타입입니다.
favorites: [String], // 문자열 배열 타입입니다.
createdAt: { type: Date, default: Date.now }, // 날짜 타입입니다.
someId: mongoose.Schema.Types.ObjectId // ObjectId 타입입니다.
});
null : null 값과 존재하지 않는 필드nullString : 문자열"mongoDB"Number : 숫자3.14Date : 날짜new Date()Buffer : 파일을 담을 수 있는 버퍼, UTF-8이 아닌 문자열을 저장0x65Boolean : true or falsetrueObjectId(Schema.Types.ObjectId) : 객체 ID, 주로 다른 객체를 참조할 때 넣음ObjectId()Array : 배열 형태의 값["a", "b", "c"]mongoose의 모델(Model)이란?