DI(Dependency Injection : 의존성 주입)의 3가지 방법
1. 필드 주입 - 필드 주입은 객체 위에 간단하게 @autowired 어노테이션을 선언하는 것이다. 그러면 스프링 컨테이너에서 생성되어 있던 객체를 가져와서 쓸 수 있다.
( 빈 등록이 되어있다는 전제 하에 가능한 것이다 , 빈으로 등록이 되어야 스프링 컨테이너에서 만들어서 관리하고 그것을 Autowired로 주입할 수 있게 되는 것이다. )
ex ) @autowired
private MemberRepository repo;
2. 생성자 주입 - 생성자 주입은 생성자를 만들때 @autowired 어노테이션을 선언하는 것이다.
ex ) @autowired
public MemberController(MemberService memberService){
this.memberService = memberService; }
3. Setter 주입 - Setter 주입은 Setter 메서드를 만들때 어노테이션을 붙이는 방식이다.
ex ) @autowired
public void setMemberService(MemberService memberService){
this.memberService = memberService);
댓글