BackEnd/Spring
[Spring] @Configuration
M00NPANG
2025. 2. 10. 00:01
기본 정의
해당 클래스가 하나 이상의 @Bean 메소드를 제공하고 Spring 컨테이너에 의해 Bean 정의를 생성하고 서비스 요청을 처리할 것을 선언
주요 기능
Bean 정의의 소스로 클래스를 표시
Bean 의존성 주입을 설정하는 메소드를 포함할 수 있음
Spring 의 Ioc 컨테이너에 의해 관리됨
사용 예시
@Configuration
public class AppConfig {
@Bean
public UserService userService() {
return new UserServiceImpl();
}
@Bean
public DatabaseConfig databaseConfig() {
return new DatabaseConfig();
}
}
특징
싱글톤 패턴을 보장함
@Component의 특수화된 형태
Java 기반의 설정을 사용할 수 있게 해줌
XML 설정을 대체할 수 있음
장점
Type-safe 설정
리팩토링이 쉬움
IDE의 자동완성 지원
컴파일 시점에 오류 확인 가능