묻고 답해요
131만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결스프링 핵심 원리 - 기본편
빈으로 등록하지 않았는데 @Autowired를 통해 의존성 주입할 때 충돌이 납니다.
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]안녕하세요 @Autowired를 사용해 의존성 주입을 하다 충돌이 나서 질문드립니다.MemberRepository인터페이스 -> MemoryMemberRepository 구현체후자에만 @Component를 붙인 상황입니다.그런데Caused by: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'memberServiceImpl' defined in file [/Users/minsung/Desktop/study/core/out/production/classes/hello/core/member/MemberServiceImpl.class]: Unsatisfied dependency expressed through constructor parameter 0: No qualifying bean of type 'hello.core.member.MemberRepository' available: expected single matching bean but found 2: memoryMemberRepository,memberRepository이런식으로 memberRepository 또한 빈으로 등록되어 있었습니다.@Autowired가 클래스 타입으로 조회한다는 것은 알고 있지만 빈으로 등록되어있는 애들 중에서 조회하는 것 아닌가요...?왜 memberRepository를 빈으로 등록하지 않았는데 빈으로 등록되어있는지@Autowired는 왜 빈으로 등록되지도 않은 memberRepository를 찾을 수 있었는지@Autowired 보다는 @RequiredArgsConstructor 사용을 권장하던데 이제 @Autowired는 잘 쓰이지 않는 것인지궁금합니다!
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
@Autowired 관련 질문
강의(자바코드로 직접 스프링 빈 등록하기)에서 마지막 부분에 @Autowired를 통한 DI는 스프링이 관리하는 객체에서만 동작한다는 설명 해주실때 @Autowired가 먹질않는다는 뜻을 잘모르겠습니다 그래서 @Autowired 를 사용하지 않으면 어떻게 되는건지도 궁금합니다..(@Autowired 의 의미? 뜻 을 잘 모르겠습니다) 생성자 주입 로직만 있으면 의존관계 설정 (DI) 완료되는게 아닌건가요?? @Autowired 를 사용하지 않으면 memberService 클래스 내에서 repository를 사용하려면 예전에 하던 new 로 생성해야 하는거랑 똑같게 되는 건가요??
-
미해결[개정판 2023-11-27] Spring Boot 3.x 를 이용한 RESTful Web Services 개발
@Autowired annotation 관련
@Autowired annotation을 바로 붙이는 방식도 현재는 추천되지 않는 방식으로 아는데요 (테스팅에서 mocking하기 어려움.) Intellij에서도 이런 방식으로 사용하면 화면에서 보이듯이 warning 메세지가 나오고요. 일반적으로 constructor기반으로 많이들 사용하는 걸로 아는데, "@Autowired"를 굳이 사용하시는 이유가 초심자들을 위해 설명을 단순화하기 위함인가요? 아니면 본인 습관이세요?
-
미해결스프링 핵심 원리 - 기본편
@Resource 관해서 질문드립니다.
안녕하세요. 강사님, 항상강의 잘 보고 있습니다. 제가 실무에서 si 사업을 하다보니 레거시 프로젝트를 많이 접합니다. 실무에서 필드 주입을 많이사용하더라구요. @Resource를 주로 사용하더라구요. service 클래스나, repository를 주입할때 사용합니다. 자바에서 지원하는걸로 알고 있는데요. 저만 다르게 강의에서 배운데로 하자니 혼자 개발 하는게 아니라 같이 사용중입니다;; 강의에서는 언급이 없으신건 스프링에서 지원하느게 아니라서 그런건가요? @Autowired의 단점이 @Resource에서도 해당하는거겠죠? 사용을 하지 말아야할거 같은데.. 이번 강의 잘 보고 설득해야겠네요..
-
해결됨스프링 핵심 원리 - 기본편
@SpringBootTest에서 어떻게 @Autowired가 작동하는지 궁금합니다
안녕하세요~ 유익한 강의 잘 듣고 있습니다! 이해가 안가는 부분이 있어 질문드립니다. 24분 40초 쯤에 보면 @SpringBootTest 클래스에서 @Autowired를 사용하고 있습니다. 이게 어떻게 동작하는지 모르겠습니다. 1. 일전에, ComponetScan의 범위는 AutoAppConfig가 포함된 패키지 이하라고 하셨습니다. 이에 따르면 test, resources는 컴포넌트 스캔의 대상이 아닙니다 2. 의존관계 주입 대상은 컨테이너에 빈이라고 하셨습니다. 그렇다면 @SpringBootTest 클래스(CoreApplicationTest)는 빈 등록 대상이 아니므로 Autowired가 불가능한 것 아닌가요?? 어떤 과정을 거쳐 @SpringBootTest 클래스에 빈이 주입되는지 궁금합니다!