반응형

다음은 이글의 동영상 강의 입니다.

https://youtu.be/mz03kWu0CvU

 

NestJS는 소스코드를 자동으로 생성해주는 Generator가 있습니다.

이 개념은 Angular의 Generator와 똑같은 기능을 수행합니다.

자동생성은 Module, Controller, Service등을 생성할 수 있습니다.

 

모듈 자동 생성하기

nest g module 모듈명

다음은 users 모듈을 generator로 생성한 것입니다.

generate module

module이 생성이 완료되면 다음과 같이 폴더와 파일이 생성된걸 보실 수 있습니다.

그리고, app.module.ts에 해당 모듈이 자동으로 import 됩니다.

이렇게 되면 UsersModule을 사용할 수 있게 됩니다.

 

Controller 자동 생성하기

다음 명령으로 Controller를 생성합니다.

nest g controller 컨트롤러명

명령이 완료되면 users.controller.ts가 생성되고, users.module.ts가 업데이트 됩니다.

users.module.ts에는 UsersController가 자동으로 추가 되었습니다.

users.controller.ts에는 'users'라는 라우팅 패스가 자동으로 추가되었습니다.

 

서비스 생성하기

다음 명령으로 service를 생성할 수 있습니다.

nest g service 서비스명

명령이 완료되면 users.service.ts 파일이 생성되고, user.module.ts가 업데이트 됩니다.

users.module.ts에는 providers에 UserService가 자동으로 추가됩니다.

생성된 users.service.ts는 다음과 같습니다.

Service는 @Injectable() 데코레이터를 사용합니다.

이는 스프링의 DI(Dependency Injection)이라는 개념을 사용하는 것입니다.

즉, Service를 사용할 곳에 선언해주면 필요한 시점에 자동으로 객체를 생성해주는 역할을 합니다.

이때 객체 생성시 사용하던 new를 사용할 필요가 없습니다.

 

이상으로 NestJS에서 Module, Controller, Service를 자동생성하는 법을 알아보았습니다.

반응형

+ Recent posts