🍏 개발일기

Spring에서 Bean을 등록하는 방법

보배 진 2026. 3. 31. 15:59

 

XML 설정 방식

<bean id="memberService" class="com.example.MemberService"/>

 

특징

🔹가장 전통적인 방식

🔹설정을 XML 파일에서 관리

🔹코드와 설정이 분리됨

 

장점

🔹설정이 한눈에 보임

🔹운영 환경별 설정 분리 쉬움

 

단점

🔹매우 장황함 (코드 양 많음)

🔹유지보수 어려움

🔹최근 거의 사용 안 함

 

@ComponentScan + @Component 계열

@Component
public class MemberService {}

또는

@Service
@Repository
@Controller

 

특징

🔹클래스에 어노테이션 붙이면 자동 등록

🔹@ComponentScan이 해당 패키지를 스캔

 

장점

🔹코드 간결

🔹자동 등록으로 생산성 높음

 

단점

🔹어디서 Bean이 등록됐는지 추적 어려움

🔹세밀한 제어가 힘듦

 

@Bean (Java Config)

@Configuration
public class AppConfig {

    @Bean
    public MemberService memberService() {
        return new MemberService();
    }
}

특징

🔹개발자가 직업 Bean 생성 및 등록

🔹메서드 단위로 Bean 정의

 

장점

🔹객체 생성 과정 제어 가능

🔹외부 라이브러리 Bean 등록 가능

🔹의존성 주입 명확

 

단점

🔹 코드가 다소 길어질 수 있음

 

@Import / @Configuration 조합

@Configuration
@Import(AppConfig.class)
public class MainConfig {}

 

특징

🔹설정 클래스들을 모듈화해서 관리

 

 

 

 

 

 

 

 

 

 

 

'🍏 개발일기' 카테고리의 다른 글

Thymeleaf  (1) 2026.04.01
전자정부표준프레임워크에 대해서  (0) 2026.03.30
REST API 란?  (0) 2026.03.29
동기와 비동기  (0) 2026.03.27
HTTP 메서드에 대해서 : GET, POST, PUT, PATCH, DELETE  (0) 2026.03.26