Spring Framework(172)
-
Using the @Bean Annotation
Using the @Bean Annotation@Bean은 메서드 레벨 어노테이션이며 XML 엘리먼트와 직접적으로 대응됩니다. 이 어노테이션은 에서 제공하는 다음과 같은 일부 속성을 지원합니다.init-methoddestroy-methodautowiringname@Bean 애노테이션은 @Configuration 어노테이션이 붙은 클래스나 @Component 어노테이션이 붙은 클래스에서 사용할 수 있습니다. Declaring a Bean빈을 선언하려면 @Bean 어노테이션으로 메서드에 어노테이션을 달 수 있습니다. 이 메서드를 사용하여 메서드의 리턴 값으로 지정된 타입의 ApplicationContext 내에 빈 정의를 등록합니다. 기본적으로 빈 이름은 메서드 이름과 동일합니다. 다음 예제는 @Bean ..
2024.11.14 -
Instantiating the Spring Container by Using AnnotationConfigApplicationContext
다음 섹션에서는 Spring 3.0에 도입된 Spring의 AnnotationConfigApplicationContext를 설명합니다. 이 다재다능한 ApplicationContext 구현은 @Configuration 클래스뿐만 아니라 일반 @Component 클래스와 JSR-330 메타데이터로 어노테이션이 달린 클래스도 입력으로 허용할 수 있습니다.@Configuration 클래스가 입력으로 제공되면 @Configuration 클래스 자체가 빈 정의로 등록되고 클래스 내에서 선언된 모든 @Bean 메서드도 빈 정의로 등록됩니다.@Component 및 JSR-330 클래스가 제공되면 빈 정의로 등록되고 필요한 경우 @Autowired 또는 @Inject와 같은 DI 메타데이터가 해당 클래스 내에서 사용된..
2024.11.14 -
Basic Concepts: @Bean and @Configuration
Spring의 Java 구성 지원에서 핵심 아티팩트는 @Configuration 어노테이션이 달린 클래스와 @Bean 어노테이션이 달린 메서드입니다.@Bean 어노테이션은 메서드가 Spring IoC 컨테이너에서 관리할 새 객체를 인스턴스화하고, 구성하고, 초기화한다는 것을 나타내는 데 사용됩니다. Spring의 XML 구성에 익숙한 사람들에게 @Bean 어노테이션은 엘리먼트와 동일한 역할을 합니다. @Bean 어노테이션이 달린 메서드는 모든 Spring @Component와 함께 사용할 수 있습니다. 그러나 @Configuration 빈과 함께 가장 많이 사용됩니다.클래스에 @Configuration 어노테이션을 달면 해당 클래스의 주요 목적이 빈 정의의 소스라는 것을 나타냅니다. 또한 @Confi..
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
아래 설명에서는 Spring의 Qualifier 활용과 @Autowired 주입 방식에 대해 자세히 살펴보고, 공식 문서 예제에 제시된 XML 기반 설정을 자바 기반 구성(Java Configuration)으로 변환하는 방법을 함께 안내합니다. 1. 개요: @Autowired와 @Qualifier스프링에서 @Autowired는 타입(type) 중심으로 의존성을 주입합니다. 그러나 같은 타입의 빈(bean)이 여러 개 존재하면, 어떤 빈을 주입해야 할지 모호해집니다. 이 때,@Primary (또는 최근 버전에서는 @Fallback)@Qualifier 와 같은 추가적인 메커니즘으로 주입 대상을 결정할 수 있습니다.그중 @Qualifier는 여러 후보 빈 중에서 특정 빈을 추가 식별자로 정교하게 선택하는 데 ..
2024.11.14 -
Annotation-based Container Configuration
Spring은 어노테이션 기반 구성에 대한 포괄적인 지원을 제공하며, 어노테이션을 클래스, 메서드 또는 필드 선언에 사용하여 컴포넌트 클래스 자체의 메타데이터로 작동합니다. 예를 들어, AutowiredAnnotationBeanPostProcessor 예제에서 언급한 것처럼, Spring은 BeanPostProcessor를 어노테이션과 함께 사용하여 핵심 IOC 컨테이너가 특정 어노테이션을 인식할 수 있도록 합니다. 예를 들어, @Autowired 어노테이션은 Autowiring Collaborators에서 설명된 것과 동일한 기능을 제공하지만, 더 세밀한 제어와 더 넓은 적용 범위를 가집니다. 또한, Spring은 @PostConstruct와 @PreDestroy와 같은 JSR-250 어노테이션에 대한..
2024.11.14