Notice
														
												
											
												
												
													Recent Posts
													
											
												
												
													Recent Comments
													
											
												
												
													Link
													
											
									| 일 | 월 | 화 | 수 | 목 | 금 | 토 | 
|---|---|---|---|---|---|---|
| 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 | 
													Tags
													
											
												
												- DB #데이터베이스
- 리액트
- 상태관리
- 코딩
- 넥사크로loadingimage
- 넥사크로
- 빈
- singleton container
- gif초기화
- 톰캣실행
- useNavigate
- setrealrowsize
- Grid
- HTML
- WITH절
- loadingimage
- usePrams
- frontend
- 싱글톤
- State
- BEAN
- CSS
- 로딩이미지변경
- react
- Spring
- decoratetext
- useSearchParams
- 싱글톤컨테이너
- aws
- singleton
													Archives
													
											
												
												- Today
- Total
All Day Tired
스프링컨테이너, 스프링빈 등록/주입 본문
기본 강의를 듣는데 참 신기하다 신기해...
왜이렇게 새로울까...
스프링 컨테이너
스프링 컨테이너는 스프링 서버 내부에 거대한 컨테이너(상자)
이 컨테이너 안에는 클래스들이 들어감
그리고 컨테이너 안에 들어간 클래스들은 스프링 빈이라고 부름
컨테이너로 클래스가 들어갈 때 이 들어가는 빈에 대한 다양한 정보들을 컨테이너가 저장하고 인스턴스화(쉽게 생각하자면 new를 해준다)도 함
아래와 같은 일이 일어나게 됨

스프링 빈 등록
스프링 빈을 등록하는 것은 크게 2가지로 생각할 수 있다.
1) @Service, @Repository 같은 어노테이션으로 스프링 빈을 등록
개발자가 직접 만든 클래스를 스프링 빈으로 등록할 때 보통 저런 어노테이션을 써서 등록하게 됨
2) @Configuration + @Bean 조합으로 스프링 빈을 등록
외부 라이브러리나 프레임워크에 만들어져 있는 클래스를 스프링 빈으로 등록할 때 주로 사용
사실 @Controller, @Service, @Repository, @Configuration 이런 어노테이션은 @Component를 상속 받아서 스프링 빈으로 등록될 수 있던 것이다.
그래서 컨트롤러도 아니고 서비스도 아니고 리포지터리도 아닌 클래스를 스프링 빈에 등록할 때 종종 @Component를 사용하기도 한다
스프링 빈 주입
빈은 등록했다면 주입하는 방법은 무엇...?
주입하는 방법은 크게 3가지로 볼 수 있다.
1) 생성자를 이용해 주입
@Repository
public class XXXRepository{
    private final JdbcTemplate jt;
    public XXXRepository(JdbcTemplate jt){
        this.jt = jt;
    }
}2) setter 사용
@Repository
public class XXXRepository{
    private JdbcTemplate jt;
    @Autowired
    public void setJdbcTemplate(JdbcTemplate jt){
        this.jt = jt;
    }
}3) @Autowired
@Repository
public class XXXRepository{
    @Autowired
    private JdbcTemplate jt;
}'Back > Spring' 카테고리의 다른 글
| @Configuration(feat.싱글톤) (0) | 2025.01.02 | 
|---|---|
| 싱글톤, 싱글톤 컨테이너 (2) | 2024.12.31 | 
| @Scheduler, cron표현식 사용 (0) | 2024.10.27 | 
| 스프링 빈 등록 (0) | 2024.09.23 | 
| 스프링에서 RestTemplate 예제 (0) | 2024.08.20 | 
			  Comments
			
		
	
               
           
					
					
					
					
					
					
				
