작성
·
37
0
@Configuration
public class InterfaceProxyConfig {
@Bean
public LogTrace logTrace() {
return new ThreadLocalLogTrace();
}
@Bean
public OrderControllerV1 orderController() {
return new OrderControllerInterfaceProxy(new OrderControllerV1Impl(orderService()), logTrace());
}
@Bean
public OrderServiceV1 orderService() {
return new OrderServiceInterfaceProxy(new OrderServiceV1Impl(orderRepository()), logTrace());
}
@Bean
public OrderRepositoryV1 orderRepository() {
return new OrderRepositoryInterfaceProxy(new OrderRepositoryV1Impl(), logTrace());
}
}
강의 보기 전에 멈춰서 제가 먼저 configuration을 만들어봤는데 결과는 똑같은 거 같더라구요
강의와 config하는 방식이 다른데 로직 자체는 똑같은 거 맞나요?(혹시나 logTrace를 빈으로 등록하고 사용해서 일관성이 깨질 수도 있나 생각했습니다.)
그리고 parameter로 받는 것과 이렇게 빈으로 등록한 것의 차이가 무엇일까요?