728x90
728x90
싱글톤에서 빈 요청은 여러명이 같은 요청의 와도 같은 객체 인스턴스의 스프링 빈을 반환한다.
프로토타입 빈에선 요청마다 새로운 빈을 생성하고 초기화, 의존관계주입후 클라이언트에게 반환하고 버린다. @PreDestroy와 같은 종료메소드 실행이 안된다.
- 이러면 메모리는?
?? 펑? 클라이언트가 안꺼주면 계속 누적되는겨?
프로토 타입과 싱글톤을 같이쓰면?
이미 싱글톤안에 프로토타입 빈이 주입이 되어 있다. 프로토타입 빈이 또 생성되지 않는다.
또 생성하고 싶다면 ObjectProvider 스프링에 의존적
JSR-330 Provider gradle에 추가해야한다.단순하고 스프링에 의존적이지 않다. get() 메소드 하나만 가지고 있다.
DL = Dependency Lookup 의존관계 조회, 탐색
스코프와 프록시
프록시도 가짜를 만들어서 집어 넣어 놓는다. 진짜 필요할 때 찾아서 집어 넣는다.
728x90