컨트롤러란?
들어오는 요청 처리, 클라이언트에 응답 반환
@Controller 데코레이터로 클래스를 정의
인자는 컨트롤러에 의해서 처리되는 경로로 받음 (ex: @Controller('/board')
핸들러란?
@Get, @Post, @Delete 등 데코레이터로 장식된, 컨트롤러 내의 단순한 메서드
서비스란?
컨트롤러에서 데이터 유효성 검사를 하거나, DB에 아이템을 생성하는 등의 작업 처리
데이터베이스 관련 로직: DB에서 데이터 가져오기, 게시판 생성 시 DB 안에 생성한 게시판 정보 넣어주기 등
@Injectable 데코레이터로 감싸지고, 서비스 인스턴스는 모듈 전체에서 자유롭게 사용이 가능
서비스를 컨트롤러에서 사용하려면
constructor (private boardsService: BoardsService) {...}
이렇게 생성자로 선언
여기서 왼쪽 boardsService는 프로퍼티, 오른쪽 BoardsService는 타입을 뜻함
(개인적으로 이 부분은 이름이 같다보니 헷갈려서 따로 정리해둔다)
'🪩 > 기타' 카테고리의 다른 글
도커(Docker), 메시지큐(Message Queue) (1) | 2024.03.26 |
---|---|
[NestJS] 기본 로직 (0) | 2024.03.15 |
[Nest.js] Select 'Retry as Sudo' to retry as superuser. 에러 (1) | 2024.03.07 |
디자인 패턴(Design pattern) : 전략 패턴 (0) | 2024.02.26 |
메모리, 제어장치, CPU (0) | 2024.02.23 |