[SpringBoot] java.lang.IllegalStateException: Failed to load ApplicationContext

2021. 7. 29. 02:25· Debug
728x90

 

 

java.lang.IllegalStateException: Failed to load ApplicationContext

Parameter 0 of constructor in hello.hellospring.SpringConfig required a single bean, but 2 were found: 

Caused by: org.springframework.beans.factory.NoUniqueBeanDefinitionException: No qualifying bean of type 'hello.hellospring.repository.MemberRepository' available: expected single matching bean but found 2: memoryMemberRepository,springDataJpaMemberRepository

가장 첫번째로 배운 Repository클래스인 memoryMemberRepository클래스의 어노테이션 @Repository를 계속 붙여놓으니까 이것도 컨테이너에 추가된듯..?? 그냥 @Repository 주석처리하니까 됐음..

근데 이전의 JpaRepository나 JdbcRepository클래스 쓸 때는 왜 됐었던건지 모르겠음

아마 springDataJpaMemberRepository가 인터페이스라서 그런 것 같음

 

-> @Bean에서 이미 Repository 의존성 주입을 해서 어노테이션 @Repository를 무시한 것 같다..

그래서 Repository용 @Bean이 전부 주석 처리 되었을 때

memberRepository를 spring이 알아서 가져오는데

예전 예제의 memoryMemberRepository클래스의 어노테이션 @Repository를 안지워주면

인터페이스 JpaRepository와 같이 처리되는 것 같다.. 하 솔직히 좀 헷갈린다

 

SpringDataJpaMemberRepository는 강의에서 설명드리는 것 처럼 스프링이 자동으로 스프링 빈으로 등록해줍니다.

코드를 보면 MemberRepository를 Bean으로 등록한 부분은 없습니다.

대신에 MemberRepository를 스프링으로 부터 주입 받아서 사용하는 부분이 있습니다.

 

동일한 타입의 빈이 중복 등록되어 발생한 문제가 맞습니다.

저작자표시 (새창열림)

'Debug' 카테고리의 다른 글

[MySQL] MySQL Connections 연결 시 Please stand by에서 멈추는 현상 / Could not acquire management access for administration  (0) 2022.02.28
[MySQL] Failed to Connect to MySQL at 127.0.0.1:3306 with user root  (0) 2022.02.28
[SpringBoot] org.h2.jdbc.JdbcSQLInvalidAuthorizationSpecException: Wrong user name or password [28000-200]  (0) 2021.07.28
[SpringBoot] org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'memberController'  (0) 2021.07.24
[SpringBoot] Cause: invalid source release: 11 (Java version 때문에 error)  (0) 2021.07.23
'Debug' 카테고리의 다른 글
  • [MySQL] MySQL Connections 연결 시 Please stand by에서 멈추는 현상 / Could not acquire management access for administration
  • [MySQL] Failed to Connect to MySQL at 127.0.0.1:3306 with user root
  • [SpringBoot] org.h2.jdbc.JdbcSQLInvalidAuthorizationSpecException: Wrong user name or password [28000-200]
  • [SpringBoot] org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'memberController'
배게
배게
백엔드배게 님의 블로그입니다.
배게
백엔드
배게
전체
오늘
어제
  • 분류 전체보기 (430)
    • 알고리즘 풀이 (338)
      • 백준 (167)
      • Codility (22)
      • 프로그래머스 (123)
      • LeetCode (2)
      • CodeForces (9)
      • SWEA (15)
    • 백엔드 (11)
    • Coding existing for (3)
    • 무지성 메모 (40)
    • Debug (30)
    • 자바 (8)

블로그 메뉴

  • 홈
  • 태그
  • 미디어로그
  • 위치로그
  • 방명록

공지사항

인기 글

태그

  • 카카오톡
  • hibernate
  • MYSQL
  • 카카오톡 txt파일 정렬
  • 카톡 내보내기한 파일 정렬
  • 카톡

최근 댓글

최근 글

hELLO · Designed By 정상우.v4.2.1
배게
[SpringBoot] java.lang.IllegalStateException: Failed to load ApplicationContext
상단으로

티스토리툴바

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.