Spring DI(2) Container 의 역할
Spring = Container
Container
: 관리(조립)
조립할때 쓰는 클래스 이름
클래스를 모아서 관리해줌
객체 생성 에서 부터 소멸 까지 담당한다
스프링에서 지원 하는
BeanFactory CORE(DI)
- ApplicationContext ( BeanFactory 안에서 상속받음) [ DI,AOP ]
WebApplicationContext [ DI,AOP, MVC ]
- AnnotationConfigApplicationContext : 많이 사용 됨 [ DI,AOP ]
WebAnnotationCOnfigApplicationContext [ DI,AOP, MVC ]
=> XML, ANnotation 에 등록 도니 클래스를 읽어서 관리
Component
: 클래스 한개
스프링의 역할
클래스를 조립 해서 처리해줌
컴포넌트 여러개를 관리함 :
Spring Framework 구조
Configulation : XML 대신 사용 가능
싱글톤
DAO 에서 사용하면 유리
DAO 가 늘어나면 공간이 작아짐.
AO 에서 사용하면 불리 프로토타입이 적합
Annotation DL
@ Component, : 일반 클래스
@ Repository, : DAO
@ Service, : DAO 여러개 연결(조인)
@ Controller, : Model
@ RestController, : Model (restful) -> JSON
@ ControllerAdvice, : AOP
@ Configuration : 환경 설정 ( 클래스 등록)
DI
값을 넣어줄 때
@Required,자동으로 찾아줘라
@Autowired,
@PostConstruct,
@PreDestroy,
@Resource- 동일할떄 사용 ,
@PersistenceContext
@PersistenceUnit
@Autowired
얘가 뭘까요 ▲