토비의 봄 TV 14회 스프링 리액티브 프로그래밍 (10) Flux의 특징과 활용방법
IT/Spring Framework2018. 2. 4. 00:06토비의 봄 TV 14회 스프링 리액티브 프로그래밍 (10) Flux의 특징과 활용방법

(시청일 : 20180114) - https://www.youtube.com/watch?v=bc4wTgA_2Xk ■ 예제 1package toby.tobytv014;import lombok.AllArgsConstructor;import lombok.Data;import lombok.extern.slf4j.Slf4j;import org.springframework.boot.SpringApplication;import org.springframework.boot.autoconfigure.SpringBootApplication;import org.springframework.web.bind.annotation.GetMapping;import org.springframework.web.bind.annotatio..

IT/Spring Framework2018. 2. 3. 23:56토비의 봄 TV 13회 스프링 리액티브 프로그래밍 (9) Mono의 동작방식과 block()

(시청일 : 20170114) - https://www.youtube.com/watch?v=LK6NRV8tZBM - 스프링 5.0 WebFlux에서 사용되는 Reactor의 Mono의 기본 동작방식을 살펴봅니다. ■ 예제 1package toby;import lombok.extern.slf4j.Slf4j;import org.springframework.boot.SpringApplication;import org.springframework.boot.autoconfigure.SpringBootApplication;import org.springframework.web.bind.annotation.GetMapping;import org.springframework.web.bind.annotation.Rest..

IT/Spring Framework2018. 2. 3. 23:54토비의 봄 TV 12회 스프링 리액티브 프로그래밍 (8) WebFlux

(시청일 : 20170114) - https://www.youtube.com/watch?v=ScH7NZU_zvk - 책 추천 : RXJava를 활용한 리액티브 프로그래밍 ■ 프로젝트 환경- 스프링부트 버전 : SpringBoot 2.0 M1- 스프링 프레임워크 버전 : SpringFramework 5.0 RC1- Core : Lombok- Web : Reactive Web (Web과 Reactive Web는 서로 배타적이라 한 프로젝트에 동시에 적용될 수 없다. 두가지 모두 선택하게 되면 Web이 우선시된다) ■ 예제 1/* ** LoadTest.java **/package toby.live; import lombok.extern.slf4j.Slf4j;import org.springframework.ut..

IT/Spring Framework2018. 2. 3. 23:52토비의 봄 TV 11회 스프링 리액티브 프로그래밍 (7) CompletableFuture

(시청일 : 20180113) - https://www.youtube.com/watch?v=PzxV-bmLSFY - https://m.blog.naver.com/PostView.nhn?blogId=goddes4&logNo=30188460262&proxyReferer=https%3A%2F%2Fwww.google.co.kr%2F - http://www.hungrydiver.co.kr/bbs/detail/develop?id=2&scroll=comment(중략) 그 동안 java 에서 제공하던 Future interface 가 제공한 Async 이지만 get() 메서드로 Blocking 을 유발하는 단점이 있었다.이런 불편함은 Spring Framework에서 제공하는 LinstenableFuture 로 해소 ..

IT/Spring Framework2018. 2. 3. 23:49토비의 봄 TV 10회 스프링 리액티브 프로그래밍 (6) AsyncRestTemplate의 콜백 헬과 중복 작업 문제

(시청일 : 20171126) - https://www.youtube.com/watch?v=Tb43EyWTSlQ ■ LoadTest.javapackage toby.live;import lombok.extern.slf4j.Slf4j;import org.springframework.util.StopWatch;import org.springframework.web.client.RestTemplate;import java.util.concurrent.*;import java.util.concurrent.atomic.AtomicInteger;@Slf4jpublic class LoadTest { static AtomicInteger counter = new AtomicInteger(0); public static ..

IT/Spring Framework2018. 2. 3. 23:46토비의 봄 TV 9회 스프링 리액티브 프로그래밍 (5) 비동기 RestTemplate과 비동기 MVC/Servlet

(시청일 : 20171119) [스프링 리액티브 웹 개발 5부. 비동기 RestTemplate과 비동기 MVC의 결합]- https://www.youtube.com/watch?v=ExUfZkh7Puk - CyclicBarrier : 자바에서 사용하는 simple 동기화 기법 CallableRunnable리턴값 존재 여부ㅇXException 던지도록 선언되어있는지 여부ㅇX - ListenableFuture : 비동기 작업 결과를 가져올 수 있는 future 타입인데, 성공/실패 시의 콜백을 등록할 수 있다. - DeferredResult : 컨트롤러의 리턴을 별도의 작업에서 할 수 있게 해준다. 하지만 이스레드는 스프링에의해 관리 되는 것이 아니다. DeferredResult클래스는 어떤 요청에 대한 응답..

IT/Spring Framework2018. 2. 3. 23:40토비의 봄 TV 2회 - 수퍼 타입 토큰

(시청일 : 20170924) - https://www.youtube.com/watch?v=01sdXvZSjcI : 스프링에서 사용되는 ParameterizedTypeReference의 작동 원리인 Super Type Token의 동작 원리와 활용법을 알아봅니다. ■ Type Token : 타입 정보를 key로 넘겨서 value를 리턴 ■ Type Safe Token 예제 코드 public class TypeToken { static Class TypeSafeMap { Map

IT/Spring Framework2018. 2. 3. 23:38토비의 봄 TV 1회 - 재사용성과 다이나믹 디스패치, 더블 디스패치

(시청일 : 20190917) - https://www.youtube.com/watch?v=s-tXAHub6vg : 객체지향의 재사용성과 다이나믹 디스패치, 더블 디스패치에 관한 이야기를 코드를 만들어가면서 설명합니다.- http://limmmee.tistory.com/28- https://zetawiki.com/wiki/%EC%A0%9C%EC%96%B4%EC%9D%98_%EC%97%AD%EC%A0%84_IoC ■ 스프링 = Dependency + Injection + Framework ■ Dependency 관계 : Supplier의 변화가 Client에 영향을 주는 경우- 의존 관계 발생 -> Supplier가 Client의 필드 -> Supplier가 Client 메소드의 파라미터 -> Suppli..

IT/Spring Framework2018. 2. 3. 23:35토비의 봄 TV 8회 스프링 리액티브 프로그래밍 (4) 자바와 스프링의 비동기 기술

(시청일 : 20171112) - https://www.youtube.com/watch?v=aSTuQiPB4Ns FutureCallback CallableDeferred ResultResponse body emitter ■ Future : 비동기 작업의 결과를 가져오는 핸들러package toby;import lombok.extern.slf4j.Slf4j;import java.util.concurrent.ExecutorService;import java.util.concurrent.Executors;import java.util.concurrent.Future;@Slf4jpublic class FutureEx { public static void main(String[] args) throws Inter..

IT/Spring Framework2018. 2. 3. 23:34토비의 봄 TV 7회 스프링 리액티브 프로그래밍 (3) - Reactive Streams - Schedulers

(시청일 : 20171105) - https://www.youtube.com/watch?v=Wlqu1xvZCak ■ Reactive Streams - Schedulers package toby.live;import lombok.extern.slf4j.Slf4j;import org.reactivestreams.Publisher;import org.reactivestreams.Subscriber;import org.reactivestreams.Subscription;import org.springframework.scheduling.concurrent.CustomizableThreadFactory;import java.util.concurrent.ExecutorService;import java.util.c..

image