Spring MVC/Spring MVC - Practice3 [Spring] RestTemplate vs WebClient vs RestClient OpenSearch API에서 FastAPI 기반 Embedding API로 HTTP 요청을 보내야 하는 요구사항이 있었다. 초기 구현은 WebClient로 작성했지만, 논블로킹 이벤트-루프 모델이 반드시 필요한 시나리오는 아니었다. 따라서 동기·블로킹 방식인 RestClient로 로직을 리팩터링해 코드 가독성과 유지보수성을 높이는 것이 적절하다고 판단했다. 하여 어떤 부분이 다르고, 어떤 특징이 있는지 알아본다.01. RestTemplate vs WebClient vs RestClient항목RestTemplateWebClientRestClient최초 도입Spring 3.0 (2009)Spring 5 (WebFlux, 2017)Spring 6.1 (2023)스레드 모델동기·블로킹비동기·논블로킹동기·블로킹.. 2025. 8. 4. [Spring] Spring @Scheduled 스케줄러 01. @Scheduled 스케줄러이번 시간에는 스프링에서 제공하는 스케쥴러 기능을 사용 해보자간단한 예시를 통해 스케쥴러의 특징에 대해서 알아본다01-1. SpringBootScheduleApplication 설정package com.spring.schedule;import org.springframework.boot.SpringApplication;import org.springframework.boot.autoconfigure.SpringBootApplication;import org.springframework.scheduling.annotation.EnableScheduling;@EnableScheduling // 스케쥴링 기능 활성화@SpringBootApplicationpublic class.. 2025. 1. 7. [Spring] Spring Boot JUnit5 자주 사용되는 어노테이션 정리 Spring Boot JUnit5 자주 사용되는 어노테이션 정리JUnit5 테스트 시 사용하는 어노테이션 및 부가 기능에 대해 간략히 정리한다@DisplayName테스트 이름 명시어떤 테스트를 의미하는지 테스트명 결정@SpringBootTest vs @WebMvcTest통합 테스트와 웹 레이어 기반 단위 테스트@SpringBootTest목적 : 애플리케이션 전체 컨텍스트 로드 후 통합 테스트 수행테스트 범위 : 애플리케이션 전체 컨텍스트 로드하기에, DB, 서비스 계층, 리포지토리, 보안 등 모든 빈을 포함한 전체 테스트 수행 가능장점 : 애플리케이션 실제 실행되는 환경과 동일한 환경 테스트 가능단점 : 테스트 시간이 길어짐, 모든 컨테스트 로드 하기에@WebMvcTest목적 : MVC (Controll.. 2025. 1. 7. 이전 1 다음