A서비스에서 B서비스를 의존받고 B서비스에서 A서비스를 의존받는 문제가 발생했는데 어떻게 해결하는게 좋을까요??
지금은 그냥 단순하게 레포를 참조하게 바꿔서 돌아가게 구현은 했는데 더 좋은 방법이 있을까요..?
서비스끼리 의존받게 한 이유는 커스텀 런타임 예외가 발생했을때 전역 예외처리기에서 동일한 스펙으로 응답하려고 했습니다
- dc official App
댓글 14
이유가 이해가 안갑니다
백갤러 1(210.117)2024-10-10 20:41
답글
예를들어 findbyid의 경우 Optional로 리턴받게 되는데 .orelsethrow를 통해 커스텀한 런타임 예외를 던지고 전역 예외 처리기에서 동일한 스펙의 응답을 리턴하게끔 구현했습니다 - dc App
Tcp게이/할부의악마(bring5530)2024-10-10 20:43
답글
a서비스에서 b서비스의 메소드를 호출하면 특정 경우에 커스텀 런타임 예외를 발생시키고 그걸 하나하나 리턴해주는것이 아닌 RestControllerAdvice 에서 처리하게끔 구현했음 - dc App
Tcp게이/할부의악마(bring5530)2024-10-10 20:44
답글
옵셔널 예외처리 책임을 레포지토리로 옮기는게 좋다고 생각해요
백갤러 1(210.117)2024-10-10 20:45
나누어서 정복
김대기(waitkim)2024-10-10 20:59
답글
결국엔 더 나눌수밖에 없군요.. 감사합니다 - dc App
Tcp게이/할부의악마(bring5530)2024-10-10 21:03
이유가 이해는 안되기는 하는데
서비스들이 협력하는데 서로가 필요하다면 각 서비스의 책임이 명확하게 분리되지 않은게 아닐까 싶음
애매하게 분리가 되어있으니 A서비스 로직 수행하는데 B서비스가 필요하고 B서비스 로직 수행하는데 A서비스가 필요하고 이런 느낌
걍 A서비스 B서비스를 조금 더 잘게 쪼개든가 해서 책임을 명확하게 하고 Facade 패턴같은거 적용해서 A, B서비스를 의존하고 있는 통합 C서비스가 로직 수행하는건 어떰?
나는뉴비(with4747)2024-10-10 21:02
답글
이 방법도 함 생각해볼게요.. 감사합니다 - dc App
Tcp게이/할부의악마(bring5530)2024-10-10 21:03
대기가 말한 운체공부를 스프링에서 하다니
기특한녀석 - dc App
익명(119.56)2024-10-10 21:03
글에서 처참한 쓰니의 실력이 보이네 - dc App
익명(193.148)2024-10-10 22:11
답글
이제 올라갈일만 남았잖아? 완전 럭키비키잖아~ - dc App
Tcp게이/할부의악마(bring5530)2024-10-10 22:27
파사드 패턴 써
백갤러 2(211.36)2024-10-10 22:50
답글
해결했는데 이게 파사드 패턴이구나.. 내가 구현한거랑 똑같네 ㅋㅋ 덕분에 배워간다 - dc App
이유가 이해가 안갑니다
예를들어 findbyid의 경우 Optional로 리턴받게 되는데 .orelsethrow를 통해 커스텀한 런타임 예외를 던지고 전역 예외 처리기에서 동일한 스펙의 응답을 리턴하게끔 구현했습니다 - dc App
a서비스에서 b서비스의 메소드를 호출하면 특정 경우에 커스텀 런타임 예외를 발생시키고 그걸 하나하나 리턴해주는것이 아닌 RestControllerAdvice 에서 처리하게끔 구현했음 - dc App
옵셔널 예외처리 책임을 레포지토리로 옮기는게 좋다고 생각해요
나누어서 정복
결국엔 더 나눌수밖에 없군요.. 감사합니다 - dc App
이유가 이해는 안되기는 하는데 서비스들이 협력하는데 서로가 필요하다면 각 서비스의 책임이 명확하게 분리되지 않은게 아닐까 싶음 애매하게 분리가 되어있으니 A서비스 로직 수행하는데 B서비스가 필요하고 B서비스 로직 수행하는데 A서비스가 필요하고 이런 느낌 걍 A서비스 B서비스를 조금 더 잘게 쪼개든가 해서 책임을 명확하게 하고 Facade 패턴같은거 적용해서 A, B서비스를 의존하고 있는 통합 C서비스가 로직 수행하는건 어떰?
이 방법도 함 생각해볼게요.. 감사합니다 - dc App
대기가 말한 운체공부를 스프링에서 하다니 기특한녀석 - dc App
글에서 처참한 쓰니의 실력이 보이네 - dc App
이제 올라갈일만 남았잖아? 완전 럭키비키잖아~ - dc App
파사드 패턴 써
해결했는데 이게 파사드 패턴이구나.. 내가 구현한거랑 똑같네 ㅋㅋ 덕분에 배워간다 - dc App
퍼싸드