Spring WebClient

오늘은 Spring의 WebClient의 사용법에 대해서 몇가지 알아보도록 하자. 사용 API만 살펴 볼 예정이므로 reactive streams(reactor..) 들의 개념과 사용법은 다른 블로그를 살펴보길 바란다. reactive streams 대한 내용을 알고 보면 좋지만 몰라도 코드를 보는데는 문제가 없을 듯 하다. WebClient는 Spring5 에 추가된 인터페이스다. spring5 이전에는 비동기 클라이언트로 AsyncRestTemplate를 사용을 했지만 spring5 부터는 Deprecated 되어 있다. 만약 spring5 이후 버전을 사용한다면 AsyncRestTemplate 보다는 WebClient 사용하는 것을 추천한다. 아직 spring 5.2(현재기준) 에서 AsyncRestTemplate 도.. Read More

Spring WebFlux HandlerMethodArgumentResolver

오늘은 Spring WebFlux의 HandlerMethodArgumentResolver에 대해서 알아보도록 하자. 사실 WebFlux 이전에 WebMvc에도 동일한 기능이 존재한다. 인터페이스명까지 동일하니 거부감은 사실 없다. 기존의 mvc의 기능과 동일은 하나 WebFlux API에 맞춰진 형태라 생각하면 된다. 어떤 기능인지는 여기를 참고해도 되고 다른 블로그 혹은 문서를 살펴봐도 좋다. WebMvc 클래스는 org.springframework.web.method.support.HandlerMethodArgumentResolver와 같고 WebFlux의 클래스는 org.springframework.web.reactive.result.method.HandlerMethodArgumentResolver 이와 같다. HandlerMethodArgumentResolverSupport 위의 내용을 알아보기 전에 WebMvc에는 존재 하지 않지만 WebFlux에 존재하는 클래스인 HandlerMethodArgumentResolverSupport 를 살펴보자. HandlerMethodArgumentResolverSupport 에는 protected 메서드가 3개.. Read More

Spring boot 2.0 의 변화

오늘은 간단하게 Spring boot 2.0 의 변화에 대해서 알아보도록 하자. 물론 다 알아볼건 아니고 필자가 필요로하거나 자주 사용할만 것들, 또는 예전에 알아봤던 내용은 살펴보지 않을 것이니 이런게 있구나 정도만 알고 넘어가고 이후 공식문서등을 참고하면 더 좋을 것 같다. @ConditionalOnBean @ConditionalOnBean 어노테이션이 AND 조건으로 변경 되었다. 2.0 이전에는 OR 조건이였지만 지금 현재는 AND 조건으로 모두조건이 만족해야 설정된다. public class ConditionalBean1 { } public class ConditionalBean2 { } public class Simple {.. Read More