01 Express.js + Mongoose ODM
- Express.js에서 Mongoose ODM 사용하기
- Express.js는 프로젝트 구조를 자유롭게 구성할 수 있기 때문에 어느 부분에 Mongoose ODM을 위치시키면 좋을지 적절한 위치를 결정하는 것이 중요하다.
- 일반적으로 models 디렉터리에 Schmea와 Model을 같이 위치 시킨다.
- app 객체는 어플리케이션 시작을 의미하는 부분이므로 해당 부분 (app 객체)에 데이터베이스 연결을 명시하는 mongoose.connect를 위치하는 것이 좋다.
- Mongoose ODM 위치 정하기 예시
- Mongoose ODM 커넥션 이벤트
- Express.js 어플리케이션은 종료되지 않고 동작하기 때문에 계속해서 데이터베이스가 정상적으로 동작하는지를 파악하기 위해 동작 중에 발생하는 데이터베이스 연결 관련 이벤트에 대한 처리를 하는 것이 좋다.
02 Sequelize ORM
- Sequelize ORM이란?
- Object-Relational Mapping
- MySQL, PostrageSQL 등의 RDMBS를 이용하는 간단한 방법
- ODM이 단순히 모델에 집중하여 관리하는 것에 반해,
- ORM은 테이블 관계와 쿼리 등의 기능을 더욱 단순화하는 용도로 주로 사용된다.
- 데이터베이스 생성
- dialect : 부분에 어떤 RDBMS와 연결할 것 인지를 작성해주면 된다.
- 스키마 작성
- DDL : Data Definition Language, 데이터 정의어
- 스키마 작성 - 관계 정의
- 쿼리 작성
- Synchronization, 데이터베이스와의 동기화
- Sequelize ORM 정리
- Sequelize ORM을 사용하면 데이터베이스에 직접 DDL을 사용하지 않고 JavaScript 코드로 테이블 및 관계를 관리할 수 있다.
- RDB의 어려운 점 중 하나인 Join 연산을 간단하게 사용할 수 있다.
'2022 AI SW 온라인 교육 > SW 코딩 훈련트랙' 카테고리의 다른 글
[SW 코딩] 웹 개발 포트폴리오 만들기 프로젝트 (0) | 2022.12.13 |
---|---|
[SW 코딩] Express.js와 MongoDB - 03. MongoDB와 Mongoose (0) | 2022.12.08 |
[SW 코딩] Express.js와 MongoDB - 02. REST API (2) | 2022.12.07 |
[SW 코딩] Express.js와 MongoDB - 01. Express.js의 미들웨어 (0) | 2022.12.06 |
[SW 코딩] Node.js와 Express.js - 04. 웹과 Express.js (0) | 2022.12.05 |