본문 바로가기

WEB/Spring

스프링 빈 등록 방법 2가지

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

 

스프링 빈을

Controller -> Service -> repository 관계로 등록하려고 함

 

 

 

 

@Controller , @Service, @Repository는 스프링 컨테이너가 찾을 수 있게 컴포넌트를 등록하기 위한 어노테이션

 

@Component로 작성해도 됨.  위 사진을 보면 @Repository는 @Component를 가지고 있는 것을 알 수 있음

나머지도 동일

 

 

@AutoWired는 스프링 빈의 연관관계를 나타냄

생성자에 @AutoWired 표시를 하면 객체 생성할 때 해당 스프링 빈을 찾아서 주입할 수 있음!

 

 

컴포넌트의 스캔범위는 

기본적으로는 메인 클래스가 있는 패키지에서 가능

 

 

2.  자바 코드로 직접 스프링 빈 등록

 

Controller는 위와 동일하게

 

@Repository와 @Service는

SpringConfig 파일을 만들어서

@Bean은 나 이거 빈으로 등록할거야! 라는 뜻이다 

DI는 생성자 주입으로 했는데 new memberService()에 memberRepository를 넣어줌으로써 완성

 

DI는 생성자 주입 ,필드 주입, setter 주입이 있는데 각 장단점이 존재한다 

특히 setter은 public으로 설정해줘야한다 ..

 

'WEB > Spring' 카테고리의 다른 글

AOP(Aspect Oriented Programming)  (0) 2023.12.13
JPA로 DB(h2) 사용하기  (0) 2023.12.13
@AfterEach - 테스트 케이스 클리어 하는 법  (1) 2023.12.07
스프링으로 테스트 케이스 만들기  (0) 2023.12.06
웹 개발  (1) 2023.12.04