Spring Boot 서비스 계층 단위 테스트 전략과 구현

테스트 대상 결정: 왜 서비스 계층인가? 전형적인 Spring Boot 기반 MVC 아키텍처에서는 컨트롤러, 서비스, 데이터 접근(DAO) 세 계층으로 구성된다. 단위 테스트의 핵심 목표는 비즈니스 로직의 정확성 검증이므로, 가장 중요한 비즈니스 규칙이 포함된 서비스 계층(Service Layer)을 주 대상으로 삼는 것이 바람직하다. Controller: HTTP 요청 파싱 및 응답 변환 처 ...

6월 20일 04:31에 게시됨

Spring Boot에서 요청 파라미터 전달 방법

이전 글에서는 Spring Boot의 설정 파일과 Controller 사용법을 살펴보았습니다. 이번에는 요청 파라미터를 어떻게 전달하고 처리하는지에 대해 알아보겠습니다. 일반적으로 웹 요청 시 URL 뒤에 ?와 & 기호를 사용해 파라미터를 전달합니다. Spring Boot에서도 이 방식을 지원하며, 서버 측에서 이를 수신하기 위해 @RequestParam 어노테이션을 활용할 수 있습니다. 이 ...

6월 20일 02:35에 게시됨

Spring Cloud 기반 전자상거래 마이크로서비스 아키텍처 설계 및 사용자 모듈 구현

개발 환경 및 아키텍처 개요 본 프로젝트는 Spring Cloud를 활용한 마이크로서비스 아키텍처(MSA)를 기반으로 설계되었습니다. 시스템은 크게 서비스 레지스트리(Eureka), API 게이트웨이, 그리고 비즈니스 로직을 처리하는 사용자 서비스와 상품 서비스로 분리됩니다. 각 서비스는 독립적인 데이터베이스를 소유하며, 서비스 간 통신은 Feign 클라이언트를 통해 이루어집 ...

6월 19일 22:16에 게시됨

Spring Boot 프로젝트에서 로컬 파일 시스템으로 이미지 업로드 구현하기

스카이 테이크아웃(苍穹外卖) 프로젝트에서 클라우드 스토리지 서비스를 사용하지 않고 로컬 파일 시스템에 이미지를 저장하는 방법을 정리합니다. 1. 업로드 디렉토리 생성 sky-server/src/main/resources 경로 아래에 upload 폴더를 생성합니다. 원하는 다른 위치에 생성해도 무방하며, 그때는 경로만 수정하면 됩니다. 2. WebMvcConfiguration에서 정적 리소스 핸들러 ...

6월 19일 21:40에 게시됨

Spring Boot에서 Flink CDC를 통한 PostgreSQL 실시간 데이터 캡처를 위한 설정 가이드

PostgreSQL 기반 실시간 데이터 동기화: 논리적 디코딩과 복제 권한 구성 Flink CDC를 사용하여 PostgreSQL의 데이터 변경 사항을 실시간으로 스트리밍하려면, 데이터베이스 측에서 적절한 복제 설정이 필요합니다. 특히 **논리적 디코딩(Logical Decoding)** 및 **복제 슬롯(Replication Slot)** 기능이 활성화되어야 하며, 접근 가능한 전용 사용자 계정도 구성되어야 ...

6월 19일 17:29에 게시됨

자바 기반 Spring Boot + Vue.js + UniApp를 활용한 애니메이션 웹사이트 개발 사례 및 소스코드 배포 안내

프로젝트 개요 이 프로젝트는 Spring Boot를 백엔드 프레임워크로, Vue.js를 전면 프론트엔드 프레임워크로, 그리고 UniApp를 통해 모바일 웹 및 네이티브 애플리케이션을 구현하는 통합 애니메이션 정보 포털 사이트입니다. 사용자 중심의 콘텐츠 관리, 게시판 시스템, 로그인 인증, 세션 관리 등 핵심 기능을 포함하며, 실제 운영 환경에서 사용 가능한 수준의 코드 구 ...

6월 19일 00:52에 게시됨

MyBatis-Plus 핵심 기능과 활용법 정리

시작하기 전에: 필요한 사전 지식 MyBatis-Plus를 학습하기 위해서는 먼저 아래 기술 스택을 익히는 것이 중요합니다: MyBatis Spring 프레임워크 Spring MVC 이러한 기초가 탄탄해야 MyBatis-Plus의 편의성과 확장성을 제대로 이해하고 활용할 수 있습니다. 왜 MyBatis-Plus를 사용하는가? 개발 과정에서 반복적인 CR ...

6월 19일 00:29에 게시됨

Go-FastDFS 웹 관리 플랫폼 설치 및 설정 가이드

프로젝트 개요 및 주요 기술 스택 Go-FastDFS는 고성능과 높은 신뢰성을 갖춘 분산 파일 저장 시스템으로, 파일 업로드의 지속성, 파편화된 전송, 소형 파일 통합, 자동 동기화 및 복구 기능을 제공합니다. 이에 기반한 Go-FastDFS 웹 관리 플랫폼은 사용자가 시각적 인터페이스를 통해 파일 시스템을 쉽게 제어하고 상태를 모니터링할 수 있도록 지원합니다. 본 프로젝트 ...

6월 17일 04:32에 게시됨

Spring Boot 기반 대학생 아르바이트 매칭 시스템 설계 및 구현

서론 디지털 기술의 급속한 발전과 함께 정보 관리 시스템은 다양한 산업 분야에서 핵심적인 역할을 수행하고 있다. 특히 대학생을 대상으로 한 아르바이트 수요가 증가함에 따라, 기존의 오프라인 방식의 채용 관리 방식은 정보의 비효율성과 처리 속도 저하 등의 문제를 야기하고 있다. 이러한 문제점을 해결하기 위해 본 연구에서는 Spring Boot 기반 ...

6월 13일 23:03에 게시됨

Spring Boot에서 MockMvc를 활용한 컨트롤러 API 테스트

Spring Boot 애플리케이션을 개발할 때, 컨트롤러 계층의 동작을 검증하기 위해 전체 애플리케이션을 실행하지 않고도 HTTP 요청을 시뮬레이션할 수 있는 방법이 필요하다. 이를 가능하게 하는 핵심 도구가 바로 MockMvc이다. 이 기능은 Spring Test 프레임워크에 포함되어 있으며, 서버를 실제로 구동하지 않아도 웹 레이어의 단위 테스트를 수행할 수 있도록 지원한다. ...

6월 13일 17:41에 게시됨