Using @PostConstruct
and @PreDestroy
(한글)
CommonAnnotationBeanPostProcessor
는 @Resource
어노테이션뿐만 아니라 JSR-250 수명 주기(lifecycle) 어노테이션도 인식합니다: jakarta.annotation.PostConstruct
및 jakarta.annotation.PreDestroy
.
Spring 2.5에 도입된 이 어노테이션에 대한 지원은 초기화 콜백 및 소멸 콜백에 설명된 수명 주기 콜백 메커니즘에 대한 대안을 제공합니다.
CommonAnnotationBeanPostProcessor
가 Spring ApplicationContext
내에 등록되어 있다면, 이러한 어노테이션 중 하나를 포함하는 메서드는 해당 Spring 라이프사이클 인터페이스 메서드 또는 명시적으로 선언된 콜백 메서드와 라이프사이클의 동일한 지점에서 호출됩니다.
다음 예제에서는 캐시가 초기화될 때 미리 채워지고 소멸될 때 지워집니다:
-
Java
-
Kotlin
public class CachingMovieLister {
@PostConstruct
public void populateMovieCache() {
// populates the movie cache upon initialization...
}
@PreDestroy
public void clearMovieCache() {
// clears the movie cache upon destruction...
}
}
class CachingMovieLister {
@PostConstruct
fun populateMovieCache() {
// populates the movie cache upon initialization...
}
@PreDestroy
fun clearMovieCache() {
// clears the movie cache upon destruction...
}
}
다양한 라이프사이클 메커니즘을 결합할 때의 효과에 대한 자세한 내용은 라이프사이클 메커니즘 결합하기를 참조하세요.
|