[NestJS] NestJS란?
요즘 Node 진영에서 핫한 프레임워크인 NestJS에 대해 간략히 알아보겠다. NestJS는 Node.js에 기반을 둔 웹 API 프레임 워크로 IoC, DI, AOP와 같은 객체 지향 개념을 도입하였다. 자바 진영의 스프링과 비
bk0625.tistory.com
NestJS는 효율적이고 확장 가능한 Node.js 서버 측 애플리케이션을 구축하기 위한 프레임워크이다. 타입스크립트를 완벽하게 지원한다. NestJS 프로젝트를 시작하는 방법을 알아보자.
먼저 Node.js가 설치되어 있다는 가정하에 포스팅을 진행하겠다. 공식문서에는 v13을 제외하고 v12보다 높으면 된다고 나와있으니 참고 바란다.
NestCLI를 사용하면 새 프로젝트를 설정하는 것은 매우 간단하다. npm이 설치된 상태에서 터미널에 다음 명령어를 사용한다.
설치가 다 진행되면 NestJS CLI 명령어를 사용할 수 있고 쉽게 프로젝트를 설정할 수 있다. 터미널에 nest 라고 치면 해당 명령어들을 확인 할 수 있다.
일단 프로젝트를 만들어야 되니 프로젝트를 생성한다.
nest new 치고 생성할 프로젝트 이름을 적으면 된다. 이렇게 하면 package manager를 어떤 걸 선택할거냐고 질문이 나오는데 필자는 npm을 선택한다. 그 후에 NestJS의 기본 프로젝트 구조가 세팅된다.
프로젝트가 세팅이 되었다.
여기서 주목해야 될건 src 폴더인데 주로 저기서 개발을 진행하게 된다. 간단하게 설명하자면
app.controller.ts | 단일 경로가 있는 기본 컨트롤러 |
app.controller.spec.ts | 컨트롤레에 대한 단위 테스트 |
app.module.ts | 응용 프로그램의 루트 모듈 |
app.service.ts | 단일 메서드를 사용하는 기본 서비스 |
main.ts | NestFactory 핵심기능을 사용하며 Nest 애플리케이션 인스턴스를 생성하는 애플리케이션의 엔트리 파일 |
이라고 설명할 수 있겠다. 꽤나 스프링과 비슷한 구조이기 때문에 자바 스프링 개발자라면 어렵지 않게 NestJS를 사용할 수 있다.
package.json을 보면 script가 나와있는데 수정되면 바로바로 서버를 다시 시작할 수 있도록 start:dev를 사용한다.
잘 실행된 것을 볼 수 있다. main.ts를 확인하면 현재 3000번 포트에서 실행되었으니 확인해보자.
링크는 DB 연동하는 법
[NestJS] .env를 사용해서 MySQL 연동하기
일반적으로 데이터베이스를 연동할 때에 코드에 바로 데이터베이스 정보를 적지 않는다. 만약 하드코딩으로 백엔드 코드에 데이터베이스 정보를 집어넣고 실수로 깃허브에 커밋한다거나 유출
bk0625.tistory.com
'backend > NestJS' 카테고리의 다른 글
[NestJS] NestJS 간단한 CRUD 구현하기(2) (0) | 2023.05.31 |
---|---|
[NestJS] NestJS 간단한 CRUD 구현하기(1) (0) | 2023.05.31 |
[NestJS]NestJS에서 Swagger 사용법 (0) | 2023.05.03 |
[NestJS]NestJS,MySQL 쿼리 로깅(logging) (0) | 2023.04.21 |
[NestJS]NestJS에서 메일 보내기 (0) | 2023.03.22 |