Open kyupid opened 3 years ago
강의명 : 스프링 핵심 원리 기본편
수강 회차 <컴포넌트 스캔>
요약
스프링 컨테이너와 스프링 빈
빈 이름 중복해서 짓지 말자. 빈 출력은 처음해봄. 입사 후 제일 바쁜 시기라 저번주보다는 템포가 늦을거 같습니다.
스린이 강의명 : 스프링 핵심 원리 기본편
수강 회차 : 섹션 9 마무리 / 웹 스코프, Provider, 프록시
request 스코프의 생명주기를 잘 알아야함. 이 스코프의 생명주기는 client의 http 요청 ~ 그 요청이 끝날 때까지 범위를 가진다. 만약에 provider를 사용하지 않고 빈 객체를 만들고 의존관계 주입이 발생하여 스프링 컨테이너가 만들어 질 때 http 요청이 없기 때문에 오류가 발생한다. @PostConstruct, @PreDestroy를 통해 컨테이너가 생성된 후 http 요청을 할 때 request 스코프를 사용하면 이 문제를 해결할 수 있다. 이 때 동시에 여러 client가 요청을 보내도, 한 주기 동안 유지되기 때문에 각 요청에 따른 uuid가 계속 보장된다.
@Configuration
ApplicationContext ac = new AnnotationConfigApplicationContext(AppConfig.class);
MemberService memberService = ac.getBean("memberService", MemberService.class);
를 통해 찾아온다
ApplicationContext 를 스프링 컨테이너라 한다.
ApplicationContext 는 인터페이스이다.
스프링 컨테이너는 XML을 기반으로 만들 수 있고, 애노테이션 기반의 자바 설정 클래스로 만들 수 있다.
직전에 AppConfig 를 사용했던 방식이 애노테이션 기반의 자바 설정 클래스로 스프링 컨테이너를 만든 것
스프링 컨테이너는 파라미터로 넘어온 설정 클래스 정보를 사용해서 스프링 빈을 등록한다.
빈 이름
@Bean(name="memberService2") 주의: 빈 이름은 항상 다른 이름을 부여해야 한다. 같은 이름을 부여하면, 다른 빈이 무시되거나, 기존 빈을 덮어버리거나 설정에 따라 오류가 발생한다
스프링 컨테이너는 설정 정보를 참고해서 의존관계를 주입(DI)한다
강의명: 스프링 핵심원리 기본편 수강회차: 옵션 처리 ~ 생성자 주입 선택
옵션 처리 자동 주입 대상을 옵션으로 처리하는 방법
생성자 주입 선택 불변
누락
생성자 주입 선택의 정리
평일 - 매일 최소 1 강의 주말 - 토,일 중 최소 1 강의