@Controller @Service @Repository는 안에 @Component에노테이션이 있기 때문에 자동으로 빈으로 등록된다.
빈이 적용되는 범위는 보통 스프링부트가 실행되는
public static void main(String[] args) {
SpringApplication.run(HelloSpringApplication.class, args);
}
이 있는 클래스에 package hello.hellospring; 패키지 안에있는 빈들만 적용이 된다.
예를 들면 hello.hellospring 패키지가 아닌 다른 패키지에 @Service를 넣는다고해서 빈이 적용되지 않는다.
어쨋든 @Component 에노테이션이 있으면 빈으로 자동 등록된다.
참고로 스프링은 스프링 컨테이너에 빈을 등록할때 기본으로 싱글톤으로 등록한다.
유일하게 하나만 등록해서 공유한다. 따라서 같은 스프링 빈이면 같은 인스터스인것이다.
'스프링강의' 카테고리의 다른 글
스프링 싱글톤 (0) | 2021.10.28 |
---|---|
@SpringBootTest, @Transactional (0) | 2021.10.12 |
좋은 객체 지향 설계 SOLID (0) | 2021.10.10 |
int a = null X (0) | 2021.09.16 |
스프링 파라미터 (0) | 2021.09.16 |