Notice
Recent Posts
Recent Comments
Link
«   2025/05   »
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
Tags
more
Archives
Today
Total
관리 메뉴

백정탈의 개발 블로그

Spring-컴포넌트 스캔 본문

스프링

Spring-컴포넌트 스캔

백정탈 2023. 3. 1. 16:27

컴포넌트 스캔

컴포넌트 스캔: 설정 정보 없이 자동으로 스프링을 빈을 등록하는 기능 예)@Component, @Controller, @Service, @Repository, @Configuration

@Autowired:  스프링 컨테이너가 자동으로 해당 스프링 빈을 찾아서 의존관계 주입한다.

 

@Component
public class MemberServiceImpl implements MemberService{}

@Component
public class OrderServiceImpl implements OrderService{}

@Component
public class MemoryMemberRepository implements MemoryMemberRepository{}

이런 형식으로 스프링 컨테이너에 있는  스프링 빈에 객체가 저장된다. 

스프링 빈 저장소
빈이름 빈 객체
meberServiceImpl MemberServiceImpl@01
orderServiceImpl OrderServiceImpl@02
memoryMemberRepository MemoryMemberRepository@03
@Component
public class MemberServiceImpl implements MemberService{
private final MemberRepository memberREpository;

	@Autowired
	Public MemberServieceImpl(MemberRepository memberRepository){
	this.memberRepository=memberRepository;
	}
}

@Autiowired를 쓰면 스프링 빈에 있는 객체가 memoryMemberRepository 인스터스가 주입되어 사용할수 있다. 


@ComponentScan(
 basePackages = "hello.core",
}

basePackage디렉토리 위치를 지정해 탐색할 패키지의 시작 위치를 지정한다.

 

 

중복 등록과 충돌

수동 빈 등록vs 자동 빈등록일 경우 수동빈 등록을 우선시 한다. 

 

 

'스프링' 카테고리의 다른 글

Spring-빈 생명주기 콜백  (0) 2023.03.08
Springs-의존관계 주입과 옵션처리  (0) 2023.03.03
Spring-싱글톤 컨테이너  (0) 2023.02.27
spring-스프링 컨테이너와 스프링 빈  (0) 2023.02.27
Spring-DI  (0) 2023.02.22