개요 클라이언트와 서버가 어떠한 요청과 응답을 주고받을 때 그 사이사이에서 역할을 하는 기능들이 있습니다. 클라이언트가 요청을 보낼 수 있는 자격이 있는지(인증, 인가) 그리고 그 요청이 적절한 요청인지(유효성 검사) 등의 검사가 필요할 수도 있고, 요청과 응답에 무언가를 추가하거나 데이터를 제어해야 할 수도 있습니다. 이러한 요청과 응답의 전 과정을 생명주기(life cycle) 라고 하는데요! 이러한 라이프사이클에 관여하는 여러 기능들이 nest 공식문서에 소개되어 있습니다. 미들웨어, 필터, 파이프 가드, 인터셉터가 그 기능인데요. 공식문서를 보면 모두 Route Handler 에게 요청이 도달하기 전에(인터셉터는 전후로) 동작하는 무언가인 것 같은데 어떨 때 사용되는 것인지 명확하게 그림이 그려지..
개요 postgreSQL 데이터베이스에 실제로 데이터를 저장하고 꺼내오는 등 데이터 조작을 해볼 예정입니다. 요청이 들어오면 컨트롤러가 받아서 서비스에게 넘겨주고, 서비스는 해당 로직을 처리합니다. 이 때 데이터가 필요하다면 레포지토리를 통해 불러올 것이고 데이터를 저장해야 한다면 이 또한 레포지토리를 통할 것입니다. 레포지토리는 데이터를 알맞는 테이블과 매핑하여 데이터베이스를 조작합니다. 각 단계마다 데이터들은 DTO 객체로 감싸서 통신이 될 것이고 typeORM이 DTO 객체를 클래스 객체로 변환하여 데이터베이스와 통신합니다. 반대로 데이터베이스에서 받아온 데이터를 DTO로 변환해서 응답합니다. DTO 생성 DTO는 Data Transfer Object 의 약자입니다. 말 그대로 데이터를 담고 이동하..
데이터베이스 세팅 이번 연습 프로젝트에서는 비용에서 자유로운 RDBMS 중 하나인 postgreSQL을 사용해보기로 하였습니다. postgreSQL 설치 postgreSQL 다운로드 페이지 다운로드 페이지에서 설치 파일을 다운로드 받은 뒤 진행하다보면 선택적으로 설치할 수 있는 파일 목록이 보이는데요! postgreSQL server: postgreSQL을 사용하기 위한 프로그램 pgAdmin4: 데이터베이스 GUI Stack Builder: 여러 추가 프로그램을 설치할 수 있는 도구 Command Line Tools: 명령어로 데이터베이스를 조작할 수 있는 도구 필요에 따라 선택적으로 설치를 하면 됩니다. 데이터베이스 생성 Add New Server 를 눌러서 서버를 생성해봅시다. 서버 생성 화면 po..
개발환경 Windows 10 node.js v21.5.0 nest.js 10.3.0 환경 세팅 Windows에서 node.js 최신 버전 업데이트 하기 node 공식 사이트 에서 직접 다운로드 후에 설치를 진행해도 되고 nvm 을 이용해서 설치해도 됩니다. nvm은 여러 노드 버전들을 손쉽게 관리할 수 있기 때문에 저는 nvm을 설치해서 업데이트 하였습니다. nvm 설치하기 nvm github 에서 nvm-setup.exe 파일을 다운로드 후에 설치를 하면 됩니다! 주요 nvm 명령어는 아래와 같고 저는 nvm install node를 이용해서 최신버전을 설치하였습니다. 만약 프로젝트 규모가 클 것으로 예상이 된다면 LTS 버전을 확인해서 설치하는 게 좀 더 안정적일 수 있을 것 같네요! nvm vers..
- Total
- Today
- Yesterday
- 스프링
- Nest
- 프로그래머스
- SQLD
- 해시맵
- Queue
- 자바bfs
- dfs
- Spring
- 형변환
- 이분탐색
- 자바dp
- 자바트리
- Comparator
- JPA
- JavaScript
- 타입스크립트
- 정렬
- 리액트
- 백준
- 자바
- Algorithm
- DP
- 자바스크립트
- CS
- SQL
- BFS
- java
- 스프링부트
- 알고리즘
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |