Spring 2

Spring DataSource, config server 에러 : Access denied for user

1️⃣ “로컬 실행이 안된다”입사 한 달 차, 로컬에서 테스트하려는데 앱이 뜨질 않았다.Access denied for user ''@'123.456.789.10' (using password: NO)username, password가 인식이 안되었다.“비밀번호가 틀렸다”가 아니라,“비밀번호를 보내지도 않았다”는 뜻이었다. 2️⃣ 문제 파악 : 로그를 찍자application.yml에 username, password를 정확히 넣고,Config Server도 꺼봤지만 여전히 안 됐다.그래서 결국 Bean에 로그를 박았다.@PostConstructpublic void debugDatasource() { HikariDataSource ds = (HikariDataSource) dataSource();..

Spring 2025.10.25

Spring WebClient block() vs subscribe(): 계층별 사용법 정리

Spring WebFlux나 WebClient를 처음 사용할 때 가장 많이 고민하게 되는 포인트 중 하나는 바로 block()과 subscribe() 중 무엇을 써야 하는가이다. 특히 테스트 코드, 서비스 코드, 컨트롤러, API 응답부 등 **계층마다 요구되는 특성이 다르다.이번 포스트에서는 WebClient를 사용하는 각 계층에서의 전략적 선택 기준을 정리해본다.기본 개념: block() vs subscribe()메서드 설명 특징block()Mono/Flux의 결과를 동기적으로 대기하여 반환블로킹 (스레드 점유), 흐름 제어 쉬움subscribe()Mono/Flux를 비동기적으로 실행하고 콜백으로 결과를 처리논블로킹, 백그라운드 실행, 흐름 관리 어려움 계층별 전략 정리계층 사용 추천 이유✅ 단위 테..

Spring 2025.06.18