TypeORM
2025. 7. 11. 14:08ㆍBack-end/NestJS
Node.js 환경에서 사용하는 ORM(Object-Relational Mapping) 라이브러리다.
DB의 테이블과 js/ts의 객체(클래스)를 자동 매핑한다.
SQL 쿼리를 직접 작성하지 않고, 객체 지향적으로 DB를 다룰 수 있게 한다.
설치
npm install typeorm @nestjs/typeorm pg
PostgreSQL : pg, MySQL : mysql2, SQLite : sqlite3 등 사용 DB에 따라 드라이버를 설치한다.
npm install @nestjs/config
.env(환경변수) 파일을 쉽게 관리하고 애플리케이션 전역에서 안전히 사용할 수 있도록 도와주는 공식 모듈.
역할
- 프로젝트 루트의 .env 파일을 자동으로 읽어 process.env에 값을 주입한다.
- 스키마로 환경변수의 필수 여부, 타입, 기본값 등을 검증한다.
- NestJS의 의존성 주입 시스템과 연동되어 서비스타 컨트롤러 등에서 환경변수를 활용할 수 있도록 한다.
- 개발/운영 등 환경에 따라 다른 .env 파일을 쉽게 적용할 수 있다.
- 설치를 안 하면 .env 파일을 사용할 때 직접 라이브러리들을 import해서 수동으로 읽어와야 하고 복잡해지기 때문에 사용을 권장한다.
설정
1. DB 사용자 생성 및 정보(name, password)를 설정하고 사용할 database를 생성한다.
테이블 생성과 설정(스키마 정의, 컬럼 속성 지정 등)은 TypeORM을 통해 모두 코드로 관리할 수 있다.
2. 프로젝트 루트(최상위 폴더)에 .env 파일을 생성한다.
DB_HOST=localhost
DB_PORT=5432
DB_USERNAME=username
DB_PASSWORD=password
DB_DATABASE=database
3. 외부에 민감한 정보가 유출되지 않도록 gitignore에 .env 파일을 추가한다.
'Back-end > NestJS' 카테고리의 다른 글
| NestJS[1]_main (3) | 2025.07.10 |
|---|---|
| NestJS[0]_개요, 실행 (3) | 2025.07.09 |