정리


보통 객체 클래스를 생성하고 객체 runner 클래스를 생성한다. 그리고 runner에서 주입받아서 코드 짜고 실행

싱글톤과 프로토타입이 객체를 찍어보니 주소가 완전히 같게 나온다. 그걸 다르게? 하려면?

@Scope(value ="prototype", proxyMode = ScopedProxyMode.TARGET_CLASS

프록시로 감싼다. 다른 싱글톤들이 프로토타입을 직접 참조하지 않도록 하기 위해서이다.

싱글톤과 프로토타입

프로토타입 객체의 예

프로토타입 빈이 싱글톤 빈을 참조하면 아무 문제가 없지만, 싱글톤 빈이 프로토타입 빈을 참조하면

“프로토타입 빈이 업데이트가 되지 않는 문제가 발생한다”

→ 업뎃하려면