spring에서 bean은 아무 생각없이 만들면
spring container에서 singleton 으로 만들어 준다.
(즉, 전체 sping container에서 항상 동일한 하나의 global instance로 bean을 만들어 준다)
따라서 immutable이고 status도 없이 만드는 것이 좋음.
만약, 다른 용도로 만드려면
Prototype Bean - 매번 생성
Session Bean - WEB 세션별로 생성
Request Bean - WEB Request별로 생성
이 존재하며..
@Component
@Scope(ConfigurableBeanFactory.SCOPE_PROTOTYPE) 과 같이 annotate 한다.
- @Scope("prototype") 만 해도 되지만.. 위에 방식이 더 안전.
xml에서 할 경우에는
<baen id="note" class="my.Note" scope="prototype"> 으로 한다.