Study/Java (194) 썸네일형 리스트형 Reactor 언제 어떤 Operator를 써야 할까? reactor reference 문서의 Appendix A: Which operator do I need? 의 내용 요약 워낙 많은 operator를 제공하기 때문에 적절하게 사용하기 위해 상황별 목록을 요약해서 제공하고 있다. 시퀀스 생성 시 (Creating a New Sequence) just Optional : Mono#JustOrEmpty(Optional) null도 존재할 경우 T: Mono#justOrEmpty(T) 만약 늦은 처리가 필요한 경우 Mono#fromSupplier 또는 just 내 defer를 사용 iterate 관련 array : Flux#fromArray collection 또는 iterable : Flux#fromIterable 정수 범위 : Flux#range 각 Sub.. java backend developer roadmap 추천하는 java backend developer roadmap 소개 자바 웹 서버 개발자(backend developer)가 되려는 사람에게 도움이 될까 싶어서 적어보는 글. 개발자 로드맵에 관련된 글은 참 많은데 그중에 괜찮은 글이 있어 짤막하게 소개하려고 한다. https://javarevisited.blogspot.com/2019/10/the-java-developer-roadmap.html The 2020 Java Developer RoadMap A blog about Java, Programming, Algorithms, Data Structure, SQL, Linux, Database, Interview questions, and my personal experience. javarevisi.. Reactor map, flatMap method는 언제 써야할까? webflux로 서비스를 만들어보면서 map과 flatMap을 언제 써야 할지 헷갈릴 때가 있어 공부한 내용을 정리함. map과 flatMap은 둘 다 스트림의 중간에 값을 변환해주는 역할을 한다. map은 1 : 1로 반환을 보증하고 flatMap은 1 : N을 변환할 수 있다. 요청에 대해 N개를 병렬로 실행할 경우가 많지 않아 map을 많이 쓸 것 같지만 개발을 하다 보면 대다수의 경우 flatMap을 사용하게 된다. flatMap을 사용하는 경우 flatMap을 사용하게 되는 경우는 다음과 같다. Mono -> Mono 또는 Mono -> Flux로 변환이 필요한 경우 map과 flatMap의 설명을 보면 다음과 같다. Publisher method Mono map Transform the ite.. Spring Boot @PropertySource 호출 순서 지정하기 multi module 환경에서 @PropertySource를 사용하는 방법에 대해 소개한 적이 있다. 2018/12/10 - [Study/Java] - Spring Boot multi module, multi profile 환경에서 @PropertySouce 사용하기 이런 multi module 환경에서 상위 모듈에 지정된 property 값을 특정 모듈에서는 다른 값을 재 지정해서 쓰고 싶은 경우가 있다. @PropertySource에 order 기능이 있으면 쉽겠지만 아쉽게도 그런 기능은 아직 제공하지 않는다. 따라서 이런 경우 environment에 등록된 propertySource 목록에 대해 순서를 재 지정해 우선순위를 조절해야 한다. 물론 java 내에서 application start 시점.. STS 4.5.0 spring boot application 실행 불가 현상 2019/12/19 STS 4.5.0 release 안내가 있었다. https://spring.io/blog/2019/12/19/spring-tools-4-5-0-released STS 4.5.0을 올리고 나니 몇 가지 문제가 있었다. multi module project에서 boot application 실행 시 class not found 에러 발생 후 웹서버 실행 불가 junit 실행 불가 위 두 가지 중 junit 실행 불가 부분은 현재 STS git issue로 등록되어 있다. https://github.com/spring-projects/sts4/issues/371 그런데 첫 번째 문제는 sts 쪽이나 eclipse 쪽 issue에 보이지 않는 것 같다. 위 현상은 일단 개인 프로젝트의 경우 .. Reactor 레퍼런스 문서 공부 Reactor 레퍼런스 문서 공부. 3.2 Asynchronicity to the Rescue? JVM에서 비동기 코드를 어떻게 개발할 수 있을까? 자바는 비동기 프로그래밍을 위한 두 가지 모델을 제공한다. Callbacks 비동기 메서드는 반환 값을 가질 수 없지만 외부 callback 매개 변수 (람다나 익명 클래스)를 통해 결과를 호출받을 수 있다. (ex : Swing의 EventListener) Futures 비동기 메서드는 Future를 즉시 리턴한다. 비동기 프로세스는 T value를 계산하지만 Future 개체는 이에 대한 access를 래핑 한다. 값을 즉시 사용할 수 없으며 사용할 수 있을 때까지 값을 polling 할 수 있다. (ex: Callable 작업을 실행하는 Executor.. Reactor 공부하기 위한 프로젝트 설정 Reactor 사이트에서는 Reactor를 아래와 같이 소개한다. Reactor is a fourth-generation Reactive library for building non-blocking applications on the JVM based on the Reactive Streams Specification 1,2,3세대가 뭔지 궁금하긴 한데 관련 내용은 찾지 못했다. (RxJava 같은걸 얘기하는 거려나..) spring webflux를 쓰기 위해서 우선 reactor를 공부해야 하는데 reactor를 먼저 공부하기 위해 순수하게 reactor에 대해서만 공부하기 위한 프로젝트 설정을 해보았다. reactor homeapge : https://projectreactor.io/ 홈페이지에서 문.. Spring Data R2DBC 써보기 R2DBC 0.8.0.RELEASE 가 2019년 12월 01일에 나왔다. (R2DBC 0.8.0 goes GA) RELEASE 버전은 처음 나온 것이고 기존엔 1.0.0.M5, 1.0.0.M6처럼 마일스톤 버전을 올리다가 M8부터 0.8.0.M8과 같이 major 버전을 하향했다. 이유는 SPI (Service Provider Interface)를 확정하지 못했기 때문이라고 한다. (R2DBC 0.8 Milestone 8 released 참고) (즉 추후 변경될 소지가 있음) 이에 대응하는 Spring Data R2DBC도 2019년 12월 6일에 RELEASE 버전이 나왔다. (Spring Data R2DBC goes GA) reference documentSpring Data R2DBC - Refe.. 이전 1 ··· 15 16 17 18 19 20 21 ··· 25 다음