스프링부트는 서비스 제공자 프레임워크(SPF)일까? #5
jupyter471
started this conversation in
지식 공유하기
Replies: 2 comments
-
|
그러나 ✅ 스프링 부트는 SPF가 아닌 이유
스프링 부트는 ApplicationContext를 통해 빈을 관리하며, SPF보다 더 강력하고 정교한 DI 기능을 제공. SPF는 런타임에 ServiceLoader 등을 통해 서비스 구현체를 로드하지만, 스프링 부트는 주로 명시적으로 빈을 정의하고 관리. |
Beta Was this translation helpful? Give feedback.
0 replies
-
|
SPF는 특정 인터페이스에 대한 구현체를 동적으로 제공하는 데 초점, 반면 스프링 부트는 애플리케이션 개발 전반을 지원하는 프레임워크. 📌 결론적으로, 스프링 부트는 SPF를 포함하는 더 넓은 개념의 프레임워크라고 볼 수 있다! |
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
-
스프링부트는 완전한 SPF가 아니지만 일부 개념을 포함하고 있음
<스프링 부트가 SPF와 유사한 부분>
의존성 주입(DI, Dependency Injection)
인터페이스 기반의 설계를 통해 특정 구현체에 의존하지 않고, 다양한 서비스 구현체를 동적으로 주입 가능.
이는 서비스 제공자 프레임워크에서 서비스를 동적으로 로드하는 것과 유사함.
스프링의 @primary 및 @qualifier
하나의 인터페이스에 여러 개의 구현체가 있을 경우, 특정 구현체를 우선 적용하거나 선택 가능.
SPF에서 특정 서비스 제공자를 선택하는 것과 비슷한 개념.
스프링의 ServiceLoaderFactoryBean
java.util.ServiceLoader를 활용하여 서비스 제공자를 자동으로 로드하는 기능을 제공.
SPF에서의 서비스 검색과 동일한 방식.
스프링의 자동 설정(Auto Configuration)
특정 조건에 따라 자동으로 빈(Bean)을 등록하는 기능을 제공 (@ConditionalOnMissingBean, @ConditionalOnProperty 등).
SPF에서 특정 서비스가 없을 때만 기본 제공자(default provider)를 적용하는 방식과 유사.
Beta Was this translation helpful? Give feedback.
All reactions