일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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
- 운영체제
- IT
- JPA
- 컴퓨터구조
- MySQL
- Spring
- 알고리즘
- Algorithm
- OS
- Kafka
- redis
- C
- Galera Cluster
- MSA
- react
- design pattern
- c언어
- Data Structure
- spring webflux
- 자료구조
- 자바
- JavaScript
- 백준
- 파이썬
- Proxy
- mongoDB
- 디자인 패턴
- 네트워크
- Java
- Heap
Archives
- Today
- Total
시냅스
Spring 컨테이너와 Spring Bean 본문
스프링 빈 Spring Bean 이란?
- 스프링 컨테이너에 의해 관리되는 자바 객체(POJO, plain old java object)
- @Bean
- 개발자가 컨트롤이 불가능한 외부 라이브러리들을 Bean으로 등록하고 싶은 경우
에 사용된다. - 메소드 또는 어노테이션 단위에 붙일 수 있다.
- 개발자가 컨트롤이 불가능한 외부 라이브러리들을 Bean으로 등록하고 싶은 경우
- @Component
- 개발자가 직접 컨트롤이 가능한 클래스들의 경우에 사용된다.
- 클래스 또는 인터페이스에 붙일 수 있다.
- @Bean
스프링 컨테이너 Spring Container 란?
- 스프링 컨테이너는 자바 객체의 생명 주기를 관리하며, 생성된 자바 객체들에게 추가적인 기능을 제공하는 역할을 한다.
- IoC와 DI의 원리가 이 스프링 컨테이너에 적용된다.
- 스프링 컨테이너는 xml 기반으로 만들 수 있고, 에노테이션 기반의 자바 설정 클래스로 만들 수 있다.
-
스프링 컨테이너는 파라미터로 넘어온 설정 클래스 정보를 사용해서 스프링 빈을 등록한다.
- 빈 저장소에서 개발자가 원하는 빈을 찾아 빈이 존재한다면 반출한다.
- CGLIB라는 바이트코드 조작 라이브러리를 이용해서 싱글톤을 유지한다.
- 스프링 컨테이너의 종류
- BeanFactory
- 직접 사용하는 경우는 거의 없다.
- 스프링 컨테이너의 최상위 인터페이스이다.
- 지금까지 우리가 사용했던 대부분의 기능은 BeanFactory가 제공하는 기능이다.
- ApplicationContext
- 일반으로 스프링 컨테이너라고 불리운다.
- BeanFactory를 상속받아 빈 관리기능 + 편리한 부가 기능을 제공한다.
- BeanFactory
'Java, Spring' 카테고리의 다른 글
스프링 빈 생명주기와 스코프, Bean Life Cycle and Scope (0) | 2022.07.25 |
---|---|
Componentscan 과 Autowired (0) | 2022.07.25 |
IOC와 DI, 컨테이너 (0) | 2022.07.25 |
좋은 객체 지향 설계의 5가지 원칙 (SOLID) (0) | 2022.07.15 |
[Java] 객체지향(OOP) 관련 용어 정리 (0) | 2022.07.15 |
Comments