Spring Framework/Spring IoC(44)
-
Using the @Configuration annotation
@Configuration은 이 어노테이션이 붙은 클래스 객체가 BeanDefinition의 소스임을 나타내는 클래스 레벨 어노테이션입니다. @Configuration 클래스는 @Bean 어노테이션이 적용된 메서드를 통해 빈을 선언합니다. @Configuration 클래스에서 @Bean 메서드에 대한 호출은 Beans 간 종속성을 정의하는 데에도 사용할 수 있습니다. 일반적인 소개는 기본 개념: @Bean 및 @Configuration을 참조하세요. Injecting Inter-bean Dependencies빈이 서로 종속성을 가질 때, 그 종속성을 표현하는 것은 다음 예제에서 보듯이 한 빈 메서드가 다른 빈 메서드를 호출하는 것만큼 간단합니다.@Configurationpublic class AppCon..
2024.11.14 -
Using the @Bean Annotation
Using the @Bean Annotation@Bean은 메서드 레벨 어노테이션이며 XML 엘리먼트와 직접적으로 대응됩니다. 이 어노테이션은 에서 제공하는 다음과 같은 일부 속성을 지원합니다.init-methoddestroy-methodautowiringname@Bean 애노테이션은 @Configuration 어노테이션이 붙은 클래스나 @Component 어노테이션이 붙은 클래스에서 사용할 수 있습니다. Declaring a Bean빈을 선언하려면 @Bean 어노테이션으로 메서드에 어노테이션을 달 수 있습니다. 이 메서드를 사용하여 메서드의 리턴 값으로 지정된 타입의 BeanDefinition를 등록합니다. 디폴트로 빈 이름은 메서드 이름과 동일합니다. 다음 예제는 @Bean 메서드 선언을 보여줍니다..
2024.11.14 -
Instantiating the Spring Container by Using AnnotationConfigApplicationContext
다음 섹션에서는 Spring 3.0에 도입된 Spring의 AnnotationConfigApplicationContext를 설명합니다. 이 다재다능한 ApplicationContext 구현은 @Configuration 클래스뿐만 아니라 일반 @Component 클래스와 JSR-330 메타데이터로 어노테이션이 달린 클래스도 Bean으로 허용할 수 있습니다.@Configuration 클래스가 입력으로 제공되면 @Configuration 클래스 자체가 BeanDefinition으로 등록되고 클래스 내에서 선언된 모든 @Bean 메서드도 BeanDefinition으로 등록됩니다.@Component 및 JSR-330 클래스가 제공되면 BeanDefinition으로 등록되고 필요한 경우 @Autowired 또는 @..
2024.11.14 -
Basic Concepts: @Bean and @Configuration
Spring의 Java 구성 지원에서 핵심 아티팩트는 @Configuration 어노테이션이 달린 클래스와 @Bean 어노테이션이 달린 메서드입니다.@Bean 어노테이션은 메서드가 Spring IoC 컨테이너에서 관리할 새 객체를 인스턴스화하고, 구성하고, 초기화한다는 것을 나타내는 데 사용됩니다. Spring의 XML 구성에 익숙한 사람들에게 @Bean 어노테이션은 엘리먼트와 동일한 역할을 합니다. @Bean 어노테이션이 달린 메서드는 모든 Spring의 @Component와 함께 사용할 수 있습니다. 그러나 @Configuration 빈(@Configuration 어노테이션이 달린 클래스도 결국에 Bean으로 등록되기 때문에 '빈'이라고 함)과 함께 가장 많이 사용됩니다.클래스에 @Configur..
2024.11.14 -
Java-based Container Configuration
이 섹션에서는 Java 코드에서 애너테이션을 사용하여 Spring 컨테이너를 구성하는 방법을 다룹니다.Section SummaryBasic Concepts: @Bean and @ConfigurationInstantiating the Spring Container by Using AnnotationConfigApplicationContextUsing the @Bean AnnotationUsing the @Configuration annotationComposing Java-based Configurations
2024.11.14 -
Fine-tuning Annotation-based Autowiring with Qualifiers
🎯 @Qualifier로 Spring DI의 모호성을 정복하다Spring의 자동 주입(@Autowired)은 디폴트로 타입(Type) 기반으로 동작합니다. @Primary나 @Fallback을 통해 하나의 primary 빈을 지정할 수 있지만, 때로는 동일 타입의 여러 빈 중에서 특정 목적에 맞는 빈을 정확하게 선택해야 할 필요가 있습니다.이때, 가장 강력하고 명시적인 주입 제어 수단이 바로 @Qualifier 어노테이션입니다. @Qualifier를 사용하면 주입 지점과 빈 정의를 이름(혹은 특정 값) 으로 연결하여 모호성을 완전히 해소할 수 있습니다. 1. @Qualifier의 역할: 주입 후보를 이름으로 좁히기@Qualifier는 @Autowired가 타입을 기반으로 찾은 후보 빈들의 집합을 개발자..
2024.11.14