스프링

Controller - Service - Repository 구조

고구마와 감자 2023. 11. 3. 10:56

 

아주 간단한 Controller - Service - Repository 3 계층 구조를 만들어보자 

# 1. Controller

 

 

# 2. Service

 

★ @Component 찾았다!

 

 

# 3. Repository

 

 

★ @Component 찾았다!

 

# 4. 설명

  • @Autowired 는 스프링 컨테이너에 등록한 빈에게 의존관계 주입이 필요할 때 DI(의존성 주입)을 도와주는 어노테이션이다.
  •  그렇다면 TestService, TestRepository는 스프링 컨테이너에 등록되어 있어야 @Autowired 어노테이션을 달고 있는 곳에 빈을 주입해준다. 
  • TestService, TestRepository 클래스 위에 있는 @Service, @Repository 어노테이션은  @Component 어노테이션을 메타 어노테이션으로 가지고 있어서 컴포넌트 스캔에 의해 스프링  컨테이너에 빈으로 등록된다. 

 

# 5. 결과

(Controller만 구현할 때와 결과는 동일)