스프링이란? 스프링 프레임워크 스프링 부트 스프링 단어? 스프링은 왜 만들었을까? 스프링의 핵심 좋은 객체 지향 프로그래밍이란? 객체 지향 특징 유연하고 변경이 용이? 다형성의 실세계 비유 ![](https://images.velog.io/images/gustjtmd/post/fa17117d-7d36-4e3f-90fc-f557e050d6c
프로젝트 생성하기
새로운 할인 정책 개발 새로운 할인 정책을 확장해보자. RateDiscountPolicy 코드 추가, 테스트 작성 ![](https://images.velog.io/images/gustjtmd/post/9aea4372-1c8b-413b-95ef-873375336cfa/%E1%84%89%E1%85%B3%E1%84%8F%E1%85%B3%E1%84%85%E1...
스프링 컨테이너 생성 스프링 컨테이너 생성과정 ![](https://images.velog.io/images/gustjtmd/post/7d05a83a-c8f7-4407-b018-86b5313a52d0/%E1%84%89%E1%85%B3%E1%84%8F%E1%85%B3%E1%84%85%E1%85%B5%E1%86%AB%E1%84%89%E1%85%A3%E1%8...
웹 애플리케이션과 싱글톤 싱글톤 패턴 싱글톤 패턴 문제점 싱글톤 컨테이너 싱글톤 컨테이너 적용 후 ![](https://images.velog.io/images/gustjtmd/post/7b1e9376-8377-4c1d-a9af-9ac54ed972c0/%E1%84%89%E1%85%B3%E1%84%8F%E1%85%B3%E1%84%85%E1%85%B5...
컴포넌트 스캔과 의존관계 자동 주입 시작하기 컴포넌트 스캔과 자동 의존관계 주입이 어떻게 동작하는지 그림으로 알아보자 ![](https://images.velog.io/images/gustjtmd/post/8854686d-973a-4bfa-a223-742230b70214/%E1%84%89%E1%85%B3%E1%84%8F%E1%85%B3%E1%84%85%...
다양한 의존관계 주입 방법 옵션 처리 생성자 주입을 선택해라 final 키워드 정리 롬복과 최신 트랜드 조회 빈이 2개 이상 - 문제 @Autowired 필드명, @Qualifier, @Primary @Primary, @Qualifier 활용 어노테이션 직접 만들기 조회한 빈이 모두 필요할 때, List, Map 자동, 수동의 올바른 실...
빈 생명주기 콜백 시작 스프링 빈의 이벤트 라이프 사이클 인터페이스 InitializingBean, DisposableBean 초기화, 소멸 인터페이스의 단점 빈 등록 초기화, 소멸 메소드 설정 정보 사용 특징, 종료 메소드 추론 애노테이션 @PostConstruct, @PreDestroy @PostConstruct, @PreDestroy 애노...
빈 스코프란? 스프링은 다음과 같은 다양한 스코프를 지원한다. 프로토타입 스코프 싱글톤 빈 요청 프로토타입 빈 요청 ![](https://images.velog.io/images/gustjtmd/post/efd25800-cb19-4764-8b44-85875a8d8f9c/%E1%84%89%E1%85%B3%E1%84%8F%E1%85%B3%E1%84%85...