스프링 컨테이너에 프로토타입 스코프의 빈을 요청하면 항상 새로운 객체 인스턴스를 생성해서 반환한다. 하지만 싱글톤 빈과 함께 사용할 때는 의도한 대로 잘 동작하지 않으므로 주의해야 한다. 프로토타입 빈 직접 요청 클라이언트A는 스프링 컨테이너에 프로토타입 빈을 요청한다. 스프링 컨테이너는 프로토타입 빈을 새로 생성해서 반환('x01')한다. 해당 빈의 count 필드 값은 0이다. 클라이언트는 조회한 프로토타입 빈에 addCount를 호출하면서 count필드를 +1 한다. 결과적으로 프로토타입 빈 ('x01')의 count는 1이 된다. 클라이언트B는 스프링 컨테이너에 프로토타입 빈을 요청한다. 스프링 컨테이너는 프로토타입 빈을 새로 생성해서 반환('x02')한다. 해당 빈의 count 필드 값은 0이다..
스프링 핵심 원리/프로토 타입 스코프 2021. 1. 2. 15:51
스프링 컨테이너에 프로토타입 스코프의 빈을 요청하면 항상 새로운 객체 인스턴스를 생성해서 반환한다. 하지만 싱글톤 빈과 함께 사용할 때는 의도한 대로 잘 동작하지 않으므로 주의해야 한다. 프로토타입 빈 직접 요청 클라이언트A는 스프링 컨테이너에 프로토타입 빈을 요청한다. 스프링 컨테이너는 프로토타입 빈을 새로 생성해서 반환('x01')한다. 해당 빈의 count 필드 값은 0이다. 클라이언트는 조회한 프로토타입 빈에 addCount를 호출하면서 count필드를 +1 한다. 결과적으로 프로토타입 빈 ('x01')의 count는 1이 된다. 클라이언트B는 스프링 컨테이너에 프로토타입 빈을 요청한다. 스프링 컨테이너는 프로토타입 빈을 새로 생성해서 반환('x02')한다. 해당 빈의 count 필드 값은 0이다..