컨트롤러와 뷰를 연결하는 것 : 의존한다.
컨트롤러는 @Controller annotations 하면 스프링 시작시 해당 객체가 생성되어 들어옴
: 스프링 부트 안의 스프링 컨테이너에서 스프링 빈이 관리된다.
생성자에 @Autowired : 스프링이 스프링 컨테이너에 있는 것과 연결
객체에 @Service, @Controller, @Repository : 정형화된 패턴 : 컴포넌트 스캔
스프링 컨테이너에 스프링 빈이 등록된 과정 : helloController -> memberService -> memberRepository
@Controller 제외하고 다른 annotation 없애고 시작
SpringConfig 파일 만듦.
@Bean을 통해 스프링 컨테이너에 올림.
이 코드에서 memberService는 memberRepository()가 필요하다.
그러면 스프링 컨테이너에 있는 memberRepository()를 넣어주게 된다.
@Controller, @Autowired는 원래 스프링에서 관리해야하는 것이므로 그냥 사용
이후 DB 바꾸기로 가정했으므로, 이 방식 사용한다.