Baeldung번역&공부46 REST API 테스트하기(Test a REST API with Java) 원본 글: https://www.baeldung.com/integration-testing-a-rest-api이 글에서는 통합테스트를 통해서 REST API를 테스트하는 방법에 대해 다룹니다.실제 있는 API를 호출하고 응답값을 받아와서 검증하는 절차까지 진행해봅니다.테스트 의존성testImplementation 'org.apache.commons:commons-lang3:3.17.0testImplementation 'org.apache.httpcomponents.client5:httpclient5:5.4.2'testImplementation 'com.fasterxml.jackson.core:jackson-databind:2.18.2'1. API Integration TestingAPI 통합 테스트는 본.. 2025. 2. 26. SpringMVC Async와 SpringWebFlux차이(Spring MVC Async vs Spring WebFlux) 원본 글: https://www.baeldung.com/spring-mvc-async-vs-webflux이 글은 Spring MVC에서 제공되는 @Async와 Spring WebFlux를 비교해봅니다. 1. Implementation Scenario간단한 API들을 포함하고 있는 웹 애플리케이션을 제작하고, 쓰레드들을 blocking, non-blocking방식을 통해서 비교해봅니다.하나의 엔드포인트를 만들고 String 형태의 값을 반환할겁니다. 여기서 핵심은 요청이 들어올때 Filter에서 200ms정도 딜레이를 줄거고 Controller에서 500ms의 딜레이를 주고 String을 반환할겁니다.테스트툴은 Apache ab라는 툴을 사용할 것이고, 이를 통해서 여러 요청을 보내볼겁니다. 2. Spri.. 2025. 2. 26. WbFlux에서 404Status를 반환하는방법(How to Return 404 with Spring WebFlux) 원본 글: https://www.baeldung.com/spring-webflux-404Netty 서버는 Servlet API를 지원하지 않으므로, 이 환경에서 404 HTTP 상태 코드를 반환하는 방법을 알아봅니다.1. Semantic Response Status표준 RESTful 방식에 따르면, API의 의미를 정확하게 표현하기 위해 다양한 HTTP 상태 코드를 적절히 활용해야 합니다.1.1 Default Return Status모든 요청에 대해 잘 처리되면 보통 200(OK)응답을 리턴합니다.@GetMapping(value = "/ok", produces = MediaType.APPLICATION_JSON_VALUE)public Flux ok() { return Flux.just("ok");}.. 2025. 2. 25. Webflux에서 Error를 다루는방법(Handling Errors in Spring WebFlux) 원본 글: https://www.baeldung.com/spring-webflux-errorsSpring WebFlux에서 에러를 다루는 여러 전략들에 대해 장점을 파악하고 소개합니다. 1. Setting Up the Example글에서는 Maven을 썼지만 저는 gradle로 초기셋팅을 진행하겠습니다.implementation 'org.springframework.boot:spring-boot-starter-webflux'해당 의존성을 추가해줍니다.이 글에서 예제는 ${username} 파라미터를 쿼리형태로 받아서 "Hello ${username}"을 반환할 겁니다.먼저 /hello 요청에 대한 router function을 생성합니다.@Configurationpublic class UserRouter.. 2025. 2. 24. anagrams을 검증하는 방법(Check if Two Strings Are Anagrams in Java) 원본 글: https://www.baeldung.com/java-strings-anagramsanagram은 주어진 단어나 문장에서 글자들을 재배열해서 다른 단어나 문장을 만드는 것을 말합니다.예를 들어, "listen"이라는 단어는 "silent"라는 단어의 아나그램입니다. 글자의 순서만 바뀌었고, 사용된 글자들의 개수는 똑같죠.각 문자의 개수와 종류가 정확히 같으면 아나그램이라고 할 수 있습니다.이러한 단어를 검증하는 방법을 학습합니다.1. Solution두 문자열이 anagram인지 확인하는 몇 가지 방법을 비교해봅니다.먼저 두 문자열의 길이가 같은지 확인합니다. 문자열의 길이가 서로 다르면 angram이 될 수 없기 때문입니다.2. Check by Sorting문자를 정렬하고 정렬된 문자를 비교하.. 2025. 2. 19. Spring WebFlux - 정적 컨텐츠들 원본 글: https://www.baeldung.com/spring-webflux-static-content이미지, HTML, CSS, Javascript 파일과 같은 정적 컨텐츠들을 웹 애플리케이션에서 제공해야할 때가 있습니다.이 글에서는 Spring WebFlux에서 어떻게 정적 컨텐츠들을 제공하는지 학습합니다.1. Overriding the Default ConfigurationSpring Boot에서는 정적 컨텐츠들을 다음과 같은 경로에서 제공하고 있습니다./public/static/resoucre/META-INF/resources만약 Spring WebFlux에서 위의 경로들을 바꾸고 싶으면 appliction.properties에서 수정해줍니다.spring.webflux.static-path-.. 2025. 2. 18. 이전 1 2 3 4 5 ··· 8 다음