2

싱글톤

싱글톤 스프링은 별도의 설정을 하지 않으면 내부에서 생성하는 빈 오브젝트를 싱글톤으로 만든다.​ 빈을 싱글톤으로 만드는 이유 스프링이 주로 적용되는 대상이 자바 엔터프라이즈 기술을 사용하는 서버환경 이기 때문이다. 또 하나의 요청을 처리하기 위해 데이터 엑세스 로직, 서비스 로직, 비즈니스 로직, 프레젠테이션 로직 등 다양한 기능을 담당하는 오브젝트 들이 참여하는 계층형 구조로 이루어진 경우가 대부분이다. 그런데 클라이언트에서 요청이 올 때마다 각 로직을 담당하는 오브젝트를 새로 만들어서 사용한다고 생각해보면 요청 한번에 5개의 오브젝트가 만들어지고 초당 50개의 요청이 들어오면 초당 250개의 새로운 오브젝트가 생성되는게 된다. 1분이면 15만개가 만들어진다. 아무리 자바의 오브젝트가 생성과 가비지컬렉..

Spring Framework 2022.03.22

컴포넌트 스캔

컴포넌트 스캔 스프링은 설정 정보가 없어도 자동으로 스프링 빈을 등록하는 컴포넌트 스캔이라는 기능을 제공한다. @Configuration //설정정보 @ComponentScan( // 스캔을 시작할 위치 basePackages = "hello.core.member", // @Configuration이 붙은 클래스는 스캔 대상에서 제외 excludeFilters = @ComponentScan.Filter(type = FilterType.ANNOTATION, classes = Configuration.class) ) //@Component 어노테이션이 붙은 클래스들을 빈으로 등록함 public class AutoAppConfig { } basePackages : 탐색할 패키지의 시작 위치를 지정한다. 이 패..

Spring Framework 2021.08.19