정리
보통 객체 클래스를 생성하고 객체 runner 클래스를 생성한다. 그리고 runner에서 주입받아서 코드 짜고 실행
싱글톤과 프로토타입이 객체를 찍어보니 주소가 완전히 같게 나온다. 그걸 다르게? 하려면?
@Scope(value ="prototype", proxyMode = ScopedProxyMode.TARGET_CLASS
프록시로 감싼다. 다른 싱글톤들이 프로토타입을 직접 참조하지 않도록 하기 위해서이다.
싱글톤과 프로토타입
프로토타입 객체의 예
프로토타입 빈이 싱글톤 빈을 참조하면 아무 문제가 없지만, 싱글톤 빈이 프로토타입 빈을 참조하면
“프로토타입 빈이 업데이트가 되지 않는 문제가 발생한다”
→ 업뎃하려면