09 빈 스코프
p119 - src/test/java/spring/basic/scope/ScopeTest
public class ScopeTest {
@Test
void getBeanTest() {
AnnotationConfigApplicationContext ac = new AnnotationConfigApplicationContext(ProtoType.class);
ProtoType bean1 = ac.getBean(ProtoType.class);
ProtoType bean2 = ac.getBean(ProtoType.class);
Assertions.assertThat(bean1).isNotSameAs(bean2);
// 컨테이너 종료
ac.close();
bean1.destroy();
bean2.destroy();
}
@Scope("prototype")
@Component
static class ProtoType {
@PostConstruct
void init(){
System.out.println("ProtoType.init");
}
@PreDestroy
void destroy() {
System.out.println("ProtoType.destroy");
}
}
}
p122(왼쪽이미지) - build.gradle
p122(오른쪽이미지) - src/main/java/spring/basic/controller/RequestBean
p123(왼쪽이미지) - src/main/java/spring/basic/controller/RequestScopeController
p123(오른쪽이미지) - src/main/java/spring/basic/BasicApplication2
p126 - src/main/java/spring/basic/controller/RequestScopeController
p126 - src/main/java/spring/basic/controller/RequestScopeController
Last updated