스프링 입문 세션 5

Tamszero·2025년 5월 16일

ECC

목록 보기
8/17

스프링 빈과 의존관계

화면을 붙이기 위해서는 컨트롤러와 뷰 템플릿이 필요함
-> 회원 컨트롤러가 회원서비스와 회원 리포지토리를 사용할 수 있게 의존관계를 준비하자

  • 스프링 빈을 등록하는 2가지 방법
    1. 컴포넌트 스캔과 자동 의존관계 설정 -> 메서드 위에 @~~ 작성하는 방법임
    1. 자바 코드로 직접 스프링 빈 등록하기
  • controller 패키지에 MemberController 작성

    -> 스프링이 컨트롤러를 생성해 관리를해줄 수 있게됨

스프링 컨테이너를 연결해주기 위해 컴포넌트 스캔으로 스프링 빈 등록



  • 연결된 관계

자바 코드로 직접 스프링 빈 등록하기

@Service,@Repository,@Autowired 애노테이션을 제거하고 진행
controller의 Autowired는 살려야함

  • 해당 위치에 SpringConfig 클래스를 생성한 후 메서드 작성
    이렇게 빈 작성을 하면 멤버서비스와 멤버리포지토리를 스프링에 등록을하고, 스프링에 등록되어있는 memberRepository를 memberService에 넣어줌
    -> 스프링 컨테이너 연결이 됨
  • 참고: DI에는 필드주입, setter주입, 생성자주입 3가지 방법이 있는데, 의존관계가 동적으로 변하는 경우는 거의 없으므로 생성자 주입 권장.

  • 참고: 실무에선 주로 정형화된 컨트롤러, 서비스, 리포지토리 같은 코드는 컴포넌트 스캔을 사용. 정형화되지 않거나 상황에 따라 구현 클래스를 변경해야 하면 설정을 통해 스프링 빈으로 등록.

0개의 댓글