일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- network configuration
- 스프링부트핵심가이드
- 리눅스
- 처음 만나는 AI수학 with Python
- 선형대수
- baeldung
- 티스토리 쿠키 삭제
- Kernighan의 C언어 프로그래밍
- 코드로배우는스프링부트웹프로젝트
- 이터레이터
- 친절한SQL튜닝
- 코드로배우는스프링웹프로젝트
- 네트워크 설정
- d
- 페이징
- GIT
- 구멍가게코딩단
- 스프링 시큐리티
- resttemplate
- 처음 만나는 AI 수학 with Python
- 서버설정
- ㅒ
- /etc/network/interfaces
- 자바편
- 데비안
- 목록처리
- iterator
- 자료구조와 함께 배우는 알고리즘 입문
- 알파회계
- 자료구조와함께배우는알고리즘입문
- Today
- Total
목록전체 글 (408)
bright jazz music
실행 컨텍스트가 활성화될 때 자바스크립트 엔진은 해당 컨텍스트에 관련된 코드들을 실행하는 데 필요한 환경 정보들을 수집해서 실행 컨텍스트 '객체'에 저장한다. 이러한 객체는 자바스크립트 엔진이 활용할 목적으로 생성하는 것이며, 개발자가 확인할 수는 없다. 실행 컨텍스트 객체에는 아래와 같은 값들이 담기게 된다. VariableEnvironmentLexicalEnvironmentThisBinding 1. VariableEnvironment: 현재 컨텍스트 내의 식별자들에 대한 정보 + 외부 환경 정보 + '선언 시' LexicalEnvironment의 스냅샷이다.실행 컨텍스트를 생성할 때 VariableEnvironment에 정보를 먼저 담은 다음, 이를 그대로 복사해서 LexicalEnvironment..

1. ports:50000번 포트는 젠킨스 마스터 노드와 젠킨스 슬레이브 노드가 통신하는 포트이다. 비워 놓으면 포트포워딩이 설정되지 않기 때문에 명시적으로 기본 포트인 50000을 적어준다.8080포트는 젠킨스 웹콘솔에 접근하는 포트이다. 기본포트는 8080이지만 여기서는 9090으로 변경해서 적어줬다. 2. volumes:도커 볼륨을 의미한다. 도커 컨테이너는 기본적으로 휘발성이기 때문에 컨테이너가 삭제되면 내부 데이터도 전부 삭제돼 버린다. 컨테이너가 삭제되더라도 데이터는 남겨 놓기 위해서 호스트의 공간을 도커 컨테이너에게 연결(마운트)해 놓는 것이다. 이 때 이 공간을 도커 볼륨이라고 하며, 도커 컨테이너는 이 공간을 마치 컨테이너 내부의 공간처럼 사용하게 된다. 2.1 volume 1이 경우, ..
1. 인증기능 구현에 필요한 패키지 설치하기이미 설치한 패키지도 있을 수 있다.// JWT(JSON Web Token) 생성/검증을 위한 NestJS 모듈pnpm add @nestjs/jwt // Passport.js를 NestJS에서 사용하기 위한 어댑터/래퍼pnpm add @nestjs/passport // Node.js 인증 미들웨어 라이브러리pnpm add passport // JWT 기반 인증을 위한 Passport 전략# Authorization 헤더에서 JWT를 추출/검증pnpm add passport-jwt // username/password 기반 인증을 위한 Passport 전략 // 로그인 시점의 인증 처리pnpm add passport-local // 패스워드 해싱을 위한 라이브러..
1. 단위 테스트1.1. members.controller.specs.ts// src/members/members.controller.spec.ts// 회원 관리 컨트롤러 테스트import { Test, TestingModule } from '@nestjs/testing';import { MembersController } from './members.controller';import { MembersService } from './members.service';import { AuthProvider } from '@common/enums';describe('MembersController', () => { let controller: MembersController; let service: Mem..

1. members.controller.ts(회원 관련 컨트롤러)// src/members/members.controller.ts// 멤버 컨트롤러: HTTP 요청을 처리하고 응답을 반환하는 컨트롤러// RESTful API 엔드포인트 정의 및 요청/응답 처리import { Controller, Get, Post, Put, Delete, Body, Param, Query, HttpStatus, HttpCode, ParseUUIDPipe} from '@nestjs/common';import { MembersService } from './members.service';import { CreateMemberDto } from './dto/create-member.dto';i..
1. 먼저 스웨거를 설치한다pnpm add @nestjs/swagger swagger-ui-express// npm install @nestjs/swagger swagger-ui-express원래는 기본적인 dto와 컨트롤러, 서비스를 먼저 작성하였다. 그러나 그 과정을 기록해 놓지 않았기 때문에 현재 코드는 스웨거가 적용된 상태이다. 따라서 이해를 돕기 위해 스웨거를 먼저 설치하고 진행한다. 2. main.ts에 적용설치를 완료했으면 main.ts에 적용해준다.// src/main.ts// 애플리케이션 진입점// 스프링부트의 @SpringBootApplication가 붙어있는 파일(메인함수가 있는 파일)에 대응되는 파일// 유효성 검사 파이프 추가import { ValidationPipe } from ..

1. member.entity.ts (회원관련 엔티티 파일)/src/members 디렉토리에 entities 디렉토리를 만들고 member.entity.ts 파일을 만들어준다.아래와 같은 내용을 작성해준다. - enum을 사용한 위치에서 오류가 발생할 것이다. 그건 2번 항목에서 다룬다. /*** src/members/entities/member.entity.ts* 멤버 엔티티: 데이터베이스의 members 테이블과 매핑되는 엔티티 클래스* 회원의 기본 정보, 인증 정보, 포인트, 레벨 등을 관리* 엔티티에서는 데이터 구조와 제약에만 집중한다.* MinLength 등의 'class-validator'의 데코레이터는 dto에서 적용한다.*/import { v4 as uuidv4 } from 'uuid';..
dependencies와 devDependencies의 차이Node.js 프로젝트의 package.json에는 두 종류의 의존성이 존재한다:dependencies프로젝트 실행에 필수적인 패키지실제 운영 환경에서 필요한 패키지들이 포함됨예: express, react, nestjs# 설치 명령어npm install 패키지명# 또는npm i 패키지명devDependencies개발 과정에서만 필요한 패키지테스트, 빌드, 포맷팅 등 개발 보조 도구들이 포함됨예: jest(테스트), prettier(포맷팅), cross-env(환경변수)# 설치 명령어npm install -D 패키지명# 또는npm i -D 패키지명package.json 예시{ "dependencies": { "express": "^4.17..
dotenv 파일 종류와 우선순위NestJS에서 환경변수 관리를 위한 dotenv 파일은 다음과 같은 종류가 있다..env: 기본 설정 파일.env.local: 로컬 개발 환경 전용 설정.env.development: 개발 환경 설정.env.production: 운영 환경 설정.env.test: 테스트 환경 설정이 파일들은 정해진 우선순위에 따라 적용된다:.env.local > .env.production > .env 순으로 우선순위가 적용되며, 같은 변수가 여러 파일에 정의되어 있을 경우 우선순위가 높은 파일의 값이 사용된다..env.local 파일 관리.env.local 파일은 개발자의 로컬 환경에 특화된 설정을 담는다. 개발자마다 다른 설정이 필요할 수 있으므로 일반적으로 .gitignore에 추가..
1. main.ts에서 validation pipe 활성화// 스프링부트의 @SpringBootApplication가 붙어있는 파일(메인함수가 있는 파일)에 대응되는 파일// 유효성 검사 파이프 추가import { ValidationPipe } from '@nestjs/common';import { NestFactory } from '@nestjs/core';import { AppModule } from './app.module';async function bootstrap() { const app = await NestFactory.create(AppModule); /* app.useGlobalPipes(new ValidationPipe()); // 전역 유효성 검사 파이프 추가*/ app.us..