콜백어떤 이벤트가 발생했거나 특정 시점에 도달했을 때 시스템에서 호출하는 함수Bean 생명주기Bean 객체가 생성되어 소멸되기 전까지의 모든 과정스프링은 의존관계 주입이 완료되면 스프링빈에게 콜백 메서드를 통해서 초기화 시점을 알려주는 다양한 기능을 제공스프링은 스프링
생성자를 통해서 의존 관계를 주입하는 방법생성자 호출 시점에 딱 한 번만 호출되는 것이 보장된다.불편, 필수 의존관계에 사용setter를 통해서 의존관계를 주입하는 방법선택, 변경 가능성이 있는 의존관계에 사용필드에 바로 주입외부에서 변경이 불가능하기에 테스트가 힘들다
@ComponentScan 지금까지 자바 코드의 @Bean이나 XML의 등을 통해 설정 정보에 Spring Bean을 등록했다. -> 반복 및 누락 이슈 Spring은 설정 정보가 없어도 @ComponentScan을 통해 자동으로 Spring Bean을 등록한다. 의
지금까지 스프링 없이 구현한 순수한 DI 컨테이너인 AppConfig는 요청할 때마다 객체를 새로 생성한다.메모리 낭비가 심함객체를 1개만 생성하고, 공유하도록 설계하면 된다.Class의 instance가 딱 1개만 생성되는 것을 보장하는 디자인 패턴싱글톤 패턴 문제점
ApplicationContext를 Spring Container라고 한다.ApplicationContext는 Interface이다.기존에는 개발자가 AppConfig를 사용해서 직접 객체 생성 및 DI\--> Spring Container를 통해서 진행Spring C
Annotation이란? Annotation의 사전적 의미는 주석이다. 자바에서 Annotation(@)는 코드 사이에 주석처럼 달아 특별한 기능을 수행하도록 하는 기술이다. 장점 코드량 감소 | 유지보수 용이 | 생산성 증가 사용 순서 Annotation을 정의한
좋은 객체 지향 설계의 5가지 원칙Single Responsibiity Principle한 클래스는 하나의 책임만 가져야 한다.변경이 있을 때 파급 효과가 적으면 SRP를 잘 따른 것Open/Closed Principle소프트웨어 요소는 확장에는 열려 있으나 변경에는
자바 언어 기반의 프레임워크자바 언어의 가장 큰 특징은 객체 지향 언어Spring은 좋은 객체 지향 애플리케이션을 개발할 수 있게 도와주는 프레임워크유연하고 변경이 용이하다example자동차가 바뀌어도 운전자 역할은 변함 없다.운전자는 자동차 역할에 대해서 알고 있음.
Spring IoC 컨테이너가 관리하는 자바 객체를 Bean이라고 한다.직접 new를 이용하여 생성한 객체가 아니라, Spring에 의하여 생성되고 관리되는 객체이다.ApplicationContext.getBean()과 같은 메소드를 사용하여 Spring에서 직접 자바
Spring MVC Architecture(1) 웹 브라우저로부터 Request가 들어오면 DispatcherServlet 클래스의 객체가 요청을 받는다.요청을 한 곳에서 받아서 처리하고, 요청에 맞는 handler로 요청을 Dispatch하고, 해당 handler의
Spring이란? 흔히 Spring이라고 부르지만 "Spring Framework"라고 하는 것이 정확한 표현 JAVA 기반의 오픈소스 애플리케이션 프레임워크이다. 동적인 웹 사이트 개발을 위한 여러 가지 서비스를 제공한다.