[Spring]프로토 타입 빈 사용시 생기는 문제점 해결하기(ObjectProvider와 JSR-330 Provider) 1. 문제 상황 흔히 싱글톤 빈 내부에 프로토타입 빈을 두고 사용할때 이 프로토타입 빈이 싱글톤마냥 관리되면서 요청할 때마다 새로 생성되는 것이 아니라 의존관계 주입 시점에 처음 생성되고 계속 재활용 되는 문제에 직면하는 경우가 생기고는 한다. 간단한 예제 상황을 가정하여 count라는 정수를 가지고 있으면서 클라이언트가 count에 1을 더해주는 addCount, count값을 반환해주는 getCount 프로토 타입 빈이 있다고 해보자. 이 프로토타입 빈을 스프링 컨테이너에 여러번 요청해서 받은 각각의 빈들에게 addCount해주고 값들을 받아보면 어떻게 될까? 아래는 그 예시 코드..
prototype bean
[Spring]싱글톤 빈 VS 프로토 타입 빈 차이점 * 싱글톤 빈 VS 프로토 타입 빈 일반적으로 싱글톤 빈은 조회할 때마다 클라이언트에게 같은 빈을 반환하는 것을 보장해준다. 하지만 프로토타입 빈은 조회할 때마다 새로운 인스턴스를 생성해서 반환해주는 특징이 있다. * 혹시 빈이나 스코프 개념에 대해 잘 모른다면 아래 글을 참고하자. 2020/10/27 - [Backend/Spring] - [Spring]빈 스코프(Bean Scope)의 종류 및 개념 [Spring]빈 스코프(Bean Scope)의 종류 및 개념 [Spring]빈 스코프(Bean Scope)의 종류 및 개념 1. 빈 스코프란? 스프링은 빈이라는 개념으로 객체를 만들고 싱글톤화 시켜 관리해준다. 이 빈으로 생성된 객체들은 스프링 컨테이너..