• 카테고리

    질문 & 답변
  • 세부 분야

    백엔드

  • 해결 여부

    미해결

@Configuration @Bean

22.06.29 19:00 작성 조회수 277

0

안녕하세요 김영한 개발자님
강의를 듣다가 궁금점이 생겨 질문드려요.
 
@Bean만 사용할 경우 스프링 빈으로 등록되지만, 싱글톤이 보장되지 않고, 싱글톤을 보장하려면 설정정보에 @Configuration이 필요하다고 이해했습니다.
 
그러면 싱글톤을 보장해주는 기능은 @Configuration이 전담(?)하는거라고 이해해도 될까요?
 
(@Configutaion 어노테이션이 있으면 항상 100% 싱글톤을 보장하고 어노테이션이 없다면 100% 싱글톤이 안되는건지 궁금합니다.)
 
감사합니다!

답변 1

답변을 작성해보세요.

3

David님의 프로필

David

2022.06.29

안녕하세요. qzxy812님, 공식 서포터즈 David입니다.

@Configuration 내에서 @Bean이 붙은 메서드를 호출하면 해당 메서드에서 생성하려는 타입(또는 이름)의 빈이 컨테이너에 존재하는지 확인하는 프로세스가 추가됩니다.

이런 방식으로 싱글톤을 유지하게 됩니다.

@Configuration이 없다면 빈으로는 등록되어도 위에 말씀드린 프로세스로 동작하진 않습니다.

감사합니다.

qzxy812님의 프로필

qzxy812

질문자

2022.06.29

감사합니다!