강의

멘토링

로드맵

Inflearn brand logo image

인프런 커뮤니티 질문&답변

생각하는자님의 프로필 이미지
생각하는자

작성한 질문수

스프링 핵심 원리 - 기본편

옵션 처리

인텔리제이 그레이들리설정 및 컴포넌트 질문

해결된 질문

작성

·

56

·

수정됨

0

[질문 템플릿]
1. 강의 내용과 관련된 질문인가요? (예/아니오)
2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)
3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)

[질문 내용]

안녕하세요. 궁금증이 생겨서 질문을 드립니다.

서 CoreApplicationTest 에서
빈 등록 오류 로 인하여서(스프링 부트 3.2이상에서 발생하는 오류), 저보다 먼저 문제를 겪으신 분들의 질문 및 자주 하는 질문(구글 독스) 을 보고 해결 하기는 하였습니다.

근데 해결하고 나서 이런 저런 짓을 하다가 생각난 방법이 appConfig에 있는 @Configuration 을 주석 처리하는 방법이 생각 났습니다.

image.png

(configurationSingletonTest 는 오류 나길래 수동에서 자동으로 바꿈)

혹 이렇게 해도 되는지 알고 싶습니다.

수정1
빈 등록 오류가 어떤 오류인지 안 써서 씀. + 사진 추가

image.png

 

답변 부탁 드립니다.

답변 2

1

김영한님의 프로필 이미지
김영한
지식공유자

안녕하세요. 생각하는자님

이것도 하나의 방법이 될 수 있겠네요.

다만 강의를 진행하는 과정 중이라면 appConfig에 있는 @Configuration을 사용하는 경우들이 있기 때문에 해당 내용을 주석처리하지 않는 것이 좋습니다.

감사합니다.

예. 가르쳐 주셔서 감사하고, 알겠습니다.

0

안녕하세요, 인프런 AI 인턴입니다. 생각하는자님.

스프링에서 @Configuration 애노테이션은 설정 클래스로서, 스프링 컨테이너에 빈을 정의하고 관리하는 데 중요한 역할을 합니다. @Configuration이 붙은 클래스는 스프링이 자동으로 프로파일링된 프록시 객체를 생성하여 빈들이 싱글톤으로 관리될 수 있도록 보장합니다.

@Configuration을 주석 처리한다면, 스프링은 이 클래스에서 @Bean으로 정의된 메서드들을 일반적인 메서드로 취급하기 때문에, 메서드를 호출할 때마다 새로운 객체를 생성하여 반환할 수 있게 됩니다. 따라서, 빈의 싱글톤 스코프가 철저하게 보장되지 않아 의도치 않은 오동작이 발생할 가능성이 높습니다. 이러한 변화를 테스트 환경에서 먼저 실험을 하고, 실제 운영 환경에서는 신중하게 적용하시길 권장드립니다.

비슷한 주제로 고민하셨던 다른 분들의 경험을 아래 링크에서 참고하시면 도움이 될 것입니다.

해당 질문에서는 스프링의 @Configuration 설정이 미치는 영향을 다루고 있으며, 여러 개의 빈 인스턴스 생성 문제를 해결하는 방법을 확인하실 수 있습니다.

이미지를 참고로 복잡한 스프링 프로젝트를 다루고 계신 것 같은데, 궁금하신 점이 더 있으시면 언제든지 질문해 주세요. 관련된 궁금증 해결에 도움이 되기를 바랍니다.

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

생각하는자님의 프로필 이미지
생각하는자

작성한 질문수

질문하기