컴포넌트 스캔과 자동 의존관계 설정

회원 컨트롤러가 회원서비스와 회원 리포지토리를 사용할 수 있게 의존관계를 준비하자.

회원 컨트롤러에 의존관계 추가

package hello.hellospring.controller;
 import hello.hellospring.service.MemberService;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Controller;
 @Controller
 public class MemberController {
     private final MemberService memberService;
     @Autowired
     public MemberController(MemberService memberService) {
         this.memberService = memberService;
     }
}

오류 발생

<aside> <img src="/icons/code_red.svg" alt="/icons/code_red.svg" width="40px" />

Consider defining a bean of type 'hello.hellospring.service.MemberService' in your configuration.

</aside>

memberService가 스프링 빈으로 등록되어 있지 않다.

스크린샷 2025-03-25 오후 9.07.33.png

참고: helloController는 스프링이 제공하는 컨트롤러여서 스프링 빈으로 자동 등록된다. @Controller 가 있으면 자동 등록됨

스프링 빈을 등록하는 2가지 방법

컴포넌트 스캔 원리