✨BACKEND8 Spring Boot에서 Swagger(OpenAPI) 문서 만들기 Spring Boot에서 Swagger(OpenAPI) 문서 만들기프로젝트를 진행하다 보면 API가 늘어날수록 “이거 뭐였지?” 하는 순간이 온다.그래서 Swagger(OpenAPI)를 붙여 API 명세를 자동화 + 테스트까지 한 번에 정리했다.1️⃣ build.gradle 의존성(Dependency) 추가implementation 'org.springdoc:springdoc-openapi-starter-webmvc-ui:3.0.2' 나는 springdoc-openapi를 사용했다.Spring Boot 3.x 기준이라면 위 스타터 하나면 끝.2️⃣ application.yml 또는 application.properties 기본 설정springdoc.api-docs.path=/v3/api-docssprin.. 2026. 3. 9. Spring Boot + MyBatis 게시판 페이지네이션 구현 (LIMIT, OFFSET) 게시판을 만들다 보니 결국 필요한 게 페이지네이션이다.데이터가 많아지면 한 번에 다 가져오는 건 말이 안 되고, 직접 LIMIT / OFFSET을 써서 페이징을 구현해보기로 했다. 이번 글에서는 Spring Boot + MyBatis 환경에서 게시글 목록 페이지네이션을 어떻게 설계하고 구현했는지 정리했다!1. 요청 DTO 정의// GetPostListReq.java@Getter@Setterpublic class GetPostListReq { private String title; // 제목 검색 @Min(value = 1, message = "페이지는 1 이상이어야 합니다.") private int page = 1; // 페이지 @Min(value = 1, message = "페이지.. 2026. 3. 3. [코딩테스트] 프로그래머스 MySQL: 특정 물고기를 잡은 총 수 구하기 프로그래머스 MySQL: 특정 물고기를 잡은 총 수 구하기https://school.programmers.co.kr/learn/courses/30/lessons/298518 프로그래머스SW개발자를 위한 평가, 교육의 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 낚시앱 데이터베이스에서특정 물고기(BASS, SNAPPER)를 몇 마리 잡았는지 구하는 SQL 문제다. 테이블은 두 개로 구성되어 있다. FISH_INFO 👉 잡은 물고기 정보 (종류는 숫자로 저장)IDFISH_TYPELENGTHTIME00302021/12/0410502020/03/0720402020/03/0731202022/03/0941NULL2022/04/0852132021/04/28606.. 2026. 2. 23. MySQL 설치부터 비밀번호 초기화까지 (feat. DBeaver) MySQL 설치부터 비밀번호 초기화까지1️⃣ MySQL 설치// Homebrew로 설치brew install mysql// 설치 완료 후 버전 확인mysql --version2️⃣ 환경변수(PATH) 설정MySQL 명령어를 어디서든 실행하려면 PATH 설정이 필요하다. 터미널 실행하면 뭘 사용하고 있는지 확인할 수 있다. zsh 사용하는 경우 (기본 macOS)open ~/.zshrc bash 사용하는 경우open ~/.bash_profile 명령어를 실행하면 에디터가 나온다. 파일 맨 아래에 추가하자.export PATH="$PATH:/usr/local/mysql/bin" ⚠️ M1/M2 맥이면 /opt/homebrew/opt/mysql/bin 일 수도 있음확인 방법which mysql 저장 후 .. 2026. 2. 20. NestJS 회원가입/로그인 구현하기(feat. MySQL) NestJS 회원가입/로그인 구현하기(feat. MySQL)DB 설계 → Entity → Module/Service → Controller → Auth/JWT 적용 0. DB 연동https://docs.nestjs.com/techniques/configuration Documentation | NestJS - A progressive Node.js frameworkNest is a framework for building efficient, scalable Node.js server-side applications. It uses progressive JavaScript, is built with TypeScript and combines elements of OOP (Object Oriented Pro.. 2025. 8. 30. NestJS 인증 기능 구현하기 NestJS 인증 기능 구현하기본 포스팅은 인프런 강의에서 배운 내용을 개인적으로 정리한 글입니다.nest g resource auth📍회원가입@Entity()export class User extends BaseEntity { @PrimaryGeneratedColumn() id: number @Column() username: string @Column() password: string}@Module({ imports: [TypeOrmModule.forFeature([User])], controllers: [AuthController], providers: [AuthService]})export class AuthModule {}// auth.service.ts@Injectable().. 2025. 8. 10. NestJS 게시판 CRUD 구현하기 NestJS 게시판 CRUD 구현하기본 포스팅은 인프런 강의에서 배운 내용을 개인적으로 정리한 기록입니다.지난 글에서는 NestJS의 기본 개념에 대해 정리해봤다. 그 내용을 바탕으로 실제 게시판 CRUD 기능을 구현해보자![✨BACKEND/📍NestJS] - NestJS 개념 NestJS 개념🐱NestJS 개념본 포스팅은 인프런 강의에서 배운 내용을 개인적으로 정리한 기록입니다.📍 NestJS란https://docs.nestjs.com/ Documentation | NestJS - A progressive Node.js frameworkNest is a framework for building efficient, sbori-note.tistory.com 📍 게시판 만들기Board Module 만.. 2025. 7. 27. NestJS 개념 🐱NestJS 개념본 포스팅은 인프런 강의에서 배운 내용을 개인적으로 정리한 기록입니다.📍 NestJS란https://docs.nestjs.com/ Documentation | NestJS - A progressive Node.js frameworkNest is a framework for building efficient, scalable Node.js server-side applications. It uses progressive JavaScript, is built with TypeScript and combines elements of OOP (Object Oriented Programming), FP (Functional Programming), and FRP (Functional Read.. 2025. 7. 20. 이전 1 다음