spring
-
webflux if else를 사용해보자 with switchIfEmptyspring 2021. 8. 3. 16:58
webflux에서 if else를 사용하기 위한 기초를 다루고 어떻게 응용할 수 있는지 알아보자 바로 예제를 살펴보도록 하자 Flux로 테스트를 했지만 Mono로 테스트하여도 switchIfEmpty를 사용하는 방법은 같다 Flux.just(1, 2, 3) .flatMap(c -> { System.out.println("flatmap1 :" + c + ", return Flux.emptu()"); return Flux.empty(); }) .switchIfEmpty(Flux.defer(() -> { System.out.println("switchIfEmpty1"); return Flux.empty(); })).flatMap(b -> { System.out.println("flatmap2"); return..
-
LocalDate, LocalDateTime format 변경spring 2021. 5. 4. 14:05
java Date는 많이 쓰지만 가끔 다른 포맷으로 변경해주는 것을 사용해야 될 때가 있는데 그것은 자주 쓰지 않아 잊어버리다가 써야 할 때 또 검색해서 찾아보곤 하였다 그러나 이제는 그런 반복을 하지 않기 위해 간단히 정리를 하였다 1. String date = "2015-08-04"; LocalDate parse = LocalDate.parse(strDate); DateTimeFormatter dateTimeFormatter = DateTimeFormatter.ofPattern("dd MMM uuuu"); System.out.println(parse + " formats as " + dateTimeFormatter.format(parse)); 2. String date = "2015-08-04 22:..
-
spring batch reader에서 transaction read mode로 실행하기spring 2020. 5. 21. 20:26
현재 검색 spring batch는 reader에서 db select시 write mode로 동작됩니다. 모든 것이 그런것은 아니고 chunk oriented batch에서 그렇게 돌아가게 되는데요 배치가 많아질 수록 가져와야 하는 데이터 양이 많아질 수록 write mode = master db로 부하를 주기 때문에 read mode = slave db로 타게 만들어줘야 할 필요성이 생겨 변경하는 작업을 하였습니다 reader, processor, writer 3개가 한개의 트랜잭션으로(write mode) 묶이며 chunk size 기준으로 rollback되기 때문에 reader에서 새로운 트랜잭션을 열어줘야 됩니다. 그래서 추가한 작업은 QuerydslItemReader.class jpasqlCus..
-
lombok build -> rebuild errorspring 2020. 5. 13. 20:49
compileOnly 'org.projectlombok:lombok' annotationProcessor 'org.projectlombok:lombok' 이것을 ext { lombokVersion = '1.18.4' } annotationProcessor group: 'org.projectlombok', name: 'lombok', version: "${lombokVersion}" compileOnly group: 'org.projectlombok', name: 'lombok', version: "${lombokVersion}" Information:java: Errors occurred while compiling module 'snsstory-execute2-master.main' Informatio..
-
gradle build error 날 경우spring 2020. 5. 13. 20:36
gradle build error 에러 케이스는 엄청 많지만 그래도 대부분 이렇게 해결했던 방식이라 적어본다 1. gradle file 안에서 println 을 찍어서 빌드를 해보는 방법 2. gradle build --debug를 해보는 방법 3. intellij에 cmd + , 에서 gradle에 가서 gradle path 확인 /usr/local/Cellar/gradle/X.X/libexec 현재 나의 경로 4. build.gradle은 명령 순서도 중요하다 뭐 어디나 마찬가지이겠지만 5. maven을 gradle로 변환해주는 명령어가 있는데 쓰지 말자 쓰다가 상당히 고생많이 했다ㅠㅠ 6. rebuild project invalidate file cache intellij 재설치까지 있다
-
Spring EntityManagerFactoryBuilder 에러spring 2020. 5. 2. 09:53
EntityManagerFactoryBuilder expected at least 1 bean which qualifies as autowire candidate 최근 해당 에러를 2번이나 직면했다.. 1. spring 실행 할 때 2. 하나는 spring 2.1 -> 2.2로 버전을 올릴 때 spring batch를 실행하는데 계속 위의 에러가 발생하였다 그래서 소스를 보니 현재 우리는 multi datasource를 사용하는데 소스를 이동하는 중에 @Primary가 빠져있었다 intellij는 여러개의 라인을 ...으로 변경해주는 기능이 있는데 그것 때문에 바로 찾지는 못하였다ㅎㅎ 우리는 멀티 모듈을 사용하고 있는데 작년에 redis모듈과 elasticsearch모듈을 만들어서 나누고 gradle에서..