본문 바로가기

nest.js21

TypeORM(GraphQL)을 활용한 API 구체적으로 만들기 1. 엔티티 정의먼저, Board 엔티티를 정의합니다. 이는 데이터베이스 테이블 구조를 나타냅니다.import { Entity, Column, PrimaryGeneratedColumn } from 'typeorm';@Entity() // 클래스를 데이터베이스 테이블로 변환export class Board { @PrimaryGeneratedColumn() // 자동 증가하는 프라이머리 키 number: number; @Column() // 일반 컬럼 writer: string; @Column() // 일반 컬럼 title: string; @Column() // 일반 컬럼 contents: string;}  2. GraphQL 타입 정의TypeScript에서는 Board 클래스를 타입으로 사용.. 2024. 6. 3.
TypeORM 정리 (2024.06.03) MySQLRDBMS (관계형 데이터베이스)TypeORMTypeScript에서 가장 유명한 ORMJavaScript ORMSequelizeTypeORM 설치 방법Nest.js 공식 문서의 databases 섹션에서 설치 방법 확인 가능설치 명령어:yarn add @nestjs/typeorm typeorm mysql2  app.module.ts에서 TypeORM 설정import { Module } from '@nestjs/common';import { TypeOrmModule } from '@nestjs/typeorm';import { Board } from './board.entity';@Module({ imports: [ TypeOrmModule.forRoot({ type: 'mysql'.. 2024. 6. 3.
TypeScript Generics, Typescript-utility 2 TypeScript 타입 정리Primitive 타입string, number, booleanconst getPrimitive = (arg1: string, arg2: number, arg3: boolean): [boolean, number, string] => { return [arg3, arg2, arg1];}Any 타입자바스크립트와 같음. 아무거나 다 될 수 있어서 위험함.const getAny = (arg1: any, arg2: any, arg3: any): [any, any, any] => { console.log(arg1 + 100); // any 타입은 아무거나 되기 때문에 위험함 return [arg3, arg2, arg1];}Unknown 타입안전한 any 타입. 타입 검.. 2024. 6. 2.
TypeScript Generics, Typescript-utility (2024.05.30) TypeScript GenericsGenerics란?Generics는 함수, 클래스, 인터페이스에서 사용할 수 있는 타입 변수를 정의합니다.코드의 재사용성을 높이고 타입을 안전하게 유지할 수 있도록 도와줍니다.Generics의 사용 예시1. 함수에서의 사용function identity(arg: T): T { return arg;}let output1 = identity("Hello World");let output2 = identity(42);console.log(output1); // "Hello World"console.log(output2); // 42 identity 함수는 제네릭 타입 변수 T를 사용하여 입력과 출력의 타입을 동일하게 유지합니다.identity은 문자열을 입력받아 반환하고.. 2024. 5. 30.
Nest.js에서 GraphQL 사용해 보기 (2024.05.30) GraphQL 개요GraphQL: 자동화된 기능이 많아 사용하기 쉽습니다.Code-First vs Schema-First:Schema-First: 기존 Apollo-server 방식으로, typeDefs를 직접 작성합니다.Code-First: Nest.js 방식으로, API 코드를 먼저 작성하고 스키마는 자동으로 생성됩니다.Nest.js GraphQL 설치Nest.js 공식 문서에서 샘플 코드와 설치 방법을 참고할 수 있습니다. 아래는 GraphQL을 Nest.js 프로젝트에 설정하는 방법입니다.  프로젝트 구조src├── main.ts├── app.module.ts├── cats│ ├── cats.module.ts│ ├── cats.resolver.ts│ └── cats.service.ts .. 2024. 5. 30.
Nest.js API 구조 정리파일 구조 (2024.05.30) 파일 구조src├── app.controller.spec.ts // 테스트 코드├── app.controller.ts // 컨트롤러├── app.module.ts // 모듈├── app.service.ts // 서비스└── main.ts // 엔트리 포인트  파일별 역할 설명app.controller.spec.ts: 컨트롤러의 테스트 코드를 작성하는 파일입니다.app.controller.ts: API 요청을 처리하는 컨트롤러 파일입니다.app.module.ts: 모듈을 정의하는 파일로, 애플리케이션의 구조를 설정합니다.app.service.ts: 비즈니스 로직을 처리하는 서비스 파일입니다.main.ts: 애플리케이션의 엔트리 포인.. 2024. 5. 30.