본문 바로가기

개발/NestJS23

[NestJS] TypeORM Pagination: 설치, 사용법, 직접 구현과의 비교 with nestjs-paginate NestJS 프로젝트에서 데이터베이스 쿼리 결과를 페이징 처리할 때 TypeORM을 많이 사용하는데, 페이징을 쉽게 구현할 수 있도록 돕는 라이브러리 중 하나가 nestjs-typeorm-paginate입니다. 이 글에서는 nestjs-typeorm-paginate의 설치 방법과 사용법, 그리고 직접 페이징 로직을 구현하는 것과의 차별점을 살펴보겠습니다.1. nestjs-typeorm-paginate 설치nestjs-typeorm-paginate를 설치하려면 다음 명령어를 실행하세요:npm install nestjs-typeorm-paginate또는 yarn을 사용하는 경우:yarn add nestjs-typeorm-paginate2. 사용법nestjs-typeorm-paginate를 사용하려면, Nes.. 2024. 11. 5.
TypeORM 트랜잭션: typeorm-transactional 사용 전후 비교 트랜잭션을 처리하는 데 있어 TypeORM은 다양한 기능을 제공하지만, 코드의 복잡성 때문에 트랜잭션 처리를 쉽게 하기 위해 typeorm-transactional 같은 라이브러리를 사용하는 것이 점점 인기를 끌고 있습니다. 이 글에서는 typeorm-transactional 라이브러리를 사용했을 때와 사용하지 않았을 때의 코드를 비교하여 장단점을 설명하고, 해당 라이브러리를 사용하면 얼마나 쉽게 트랜잭션 처리를 할 수 있는지를 보여드리겠습니다.TypeORM 트랜잭션 기본 사용법기본적으로 TypeORM에서 트랜잭션을 사용하는 방법은 쿼리 러너(QueryRunner)를 사용하는 것입니다. 이 방식은 익숙하지만, 코드가 길고 복잡해지는 단점이 있습니다. 아래는 TypeORM에서 트랜잭션을 사용하는 기본적인 .. 2024. 10. 29.
[NestJS] 의존성 주입의 모든 것: Provider와 useClass, useFactory, useValue 사용법 최근 DDD 개발을 진행중에 있는데 생각보다 이 개념을 디테일하게 설명해주는 글을 찾기 쉽지 않고 사용법을 제대로 알지 못하고 그냥 복사 붙이기해서 사용하는 사람들이 있어서 작성하게 됐다!NestJS에서 useClass, useFactory, useValue의 차이와 용도NestJS에서 의존성 주입(Dependency Injection)을 위해 제공하는 useClass, useFactory, useValue는 providers 설정에서 사용되는 여러 방법들이다. 각각의 방법은 서비스나 값을 주입하기 위해 사용하는 방식이 조금씩 다르다. 이들이 어떻게 다른지와 각자의 용도를 설명하고, 실제로 사용되는 방법까지 예시를 통해 알아보자!1. useClass 사용 예시useClass는 특정 클래스를 주입하고, 다.. 2024. 10. 23.
[NestJS] CORS default의 함정 nestjs cors 설정 관련해서는 저번에 https://coking.tistory.com/18 이 글에서 한 번 다룬 적이 있다. 하지만 초보자들이 default 옵션을 쓰다가 cors 옵션 관련해서 새로운 옵션들을 추가하다가 똑같은 실수를 자주 하는 걸 많이 봐서 이렇게 작성해 본다. 어느 정도 개발을 하다 보면 보안적인 측면을 고려하게 되면서 분명히 const app = await NestFactory.create(AppModule, { cors: true }); 이렇게만 사용하던 cors 설정을 아래와 같은 코드 설정을 통해 허용된 도메인만 서버에 접근하게 하려 하는 경우가 있다. const app = await NestFactory.create(AppModule, { cors: true });.. 2024. 3. 10.