4장 - 프로바이더
2023. 4. 4. 17:20ㆍ개발 관련 책 읽기/NestJS로 배우는 백엔드 프로그래밍
✅ 아래 내용들에 대해서 알아보자
- 프로바이더
- 프로바이더 등록과 사용
프로바이더
비즈니스 로직을 수행하는 역할을 한다.
프로바이더는 서비스, 저장소, 팩터리, 헬퍼 등 여러 가지 형태로 구현이 가능하다.
프로바이더는 @Injectable() 데커레이터를 사용하는데 @Injectable을 클래스 위에 지정하면, 해당 클래스는 NextJS가 어플리케이션 실행 할 때 로드되며, NextJs의 DI 컨테이너에서 사용가능한 하나의 Provider로 등록된다.
따라서, 어떤 클래스에서든 UserService를 DI 받아 사용가능하고, 별도의 스코프를 지정해주지 않으면 싱글톤으로 생성된다.(스프링과 유사하다)
import { Injectable } from '@nestjs/common';
@Injectable() //DI
export class UserService {
remove(id: number): string {
return `This action removes id=${id} User`;
}
}
프로바이더 등록과 사용
프로바이더 인스턴스를 사용하려면 모듈에 등록을 해줘야 한다.
@Module({
controllers: [UserController],
providers: [UserService],
})
export class UserModule {}
반응형
'개발 관련 책 읽기 > NestJS로 배우는 백엔드 프로그래밍' 카테고리의 다른 글
7장, 8장 - 파이프, 영속화 (0) | 2023.04.06 |
---|---|
5, 6장 - 모듈/동적 모듈 (0) | 2023.04.05 |
3장 - Hello NestJS (0) | 2023.04.04 |
1장 - Hello NestJS (0) | 2023.04.03 |