일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- ubuntu자바설치
- 스페인여행
- ELK
- 뚝섬역맛집
- 영화추천
- npm
- 돈암동맛집
- 통영
- 퇴사후공무원
- 방이편백육분삼십성신여대
- 공무원
- springboot
- 성북구맛집
- gradle
- 꼴뚜기회
- 성신여대편백집
- 한남동맛집
- 통영에어비앤비
- 통영여행
- 서울숲누룽지통닭구이
- 통영예쁜카페
- 파이썬
- tomcat7
- 성신여대맛집
- react
- 방이편백육분삼십
- 한성대맛집
- JavaScript
- 자바스크립트에러처리
- 국가직
- Today
- Total
코린이의 기록
[NestJS] NestJS 공부 본문
목차
NestJS 개요
NestJS는 효율적이고 확장 가능한 Node.js 서버 측 application을 빌드하기 위한 프레임워크이다. progressive JavaScript를 사옹하고 TypeScript 지원하며 OOP(Object Oriented Programming), FP(Functional Programming) 및 FRP(Functional Reactive Programming) 요소를 결합한다.
또한 Springboot와 유사한 점이 많은 프레임워크이다.
내부적으로 Nest는 Express와 같은 강력한 HTTP서버 프레임워크를 사용하며 선택적으로 Fastify를 사용하도록 구성할 수 있다.
Nest는 Node.js 프레임워크 (Express/Fastify)의 API를 직접 사용할 수도 있다. 이를 통해 개발자는 기본 플랫폼에서 사용할 수 있는 수 많은 타사의 모듈을 자유롭게 사용할 수 있다. 또한 F/E코드와 B/E코드를 하나의 언어로 작성할 수 있다는 장점이 있다.
NestJS project 구조는 크게 세가지로 나눠서 본다.
- Controllers
- Providers (=Service)
- Modules
Controllers
Spring에서 쓰는 Controller와 동일함. 들어오는 Request를 핸들링하고 Response를 Client에 돌려준다.
기본 Controller 만들기
cats.controller.ts
@Controller 데코레이터를 사용한다. (java의 annotation 같은거)
cats의 선택적 경로 prefix를 지정할 수 있다. @Controller() 데코레이터의 prefix 경로를 사용함으로써 관련된 라우트들을 쉽게 그룹화할 수 있고 코드의 반복을 최소화할 수 있다. 예를들어 /customers 경로 아래에 고객 entity와 상호 작용을 관리하는 경로의 집합을 그룹화 하도록 할 수 있다. customers prefix를 지정하여 각 경로의 해당 부분을 반복 할 필요가 없도록 한다.
import { Controller, Get } from '@nestjs/common';
@Controller('cats')
export class CatsController {
@Get()
findAll(): string {
return 'This action returns all cats';
}
}
Reference
'Script' 카테고리의 다른 글
[shell script] CSV file에서 특정 column만 추출하는 쉘 스크립트. (0) | 2018.06.21 |
---|