728x90
목차
1. 스프링 빈의 생명 주기
스프링 빈의 생명 주기를 먼저 살펴보면 아래와 같습니다.
- 스프링 컨테이너 생성
- 스프링 빈 생성
- 의존 관계 주입 (DI)
- 초기화 콜백 - 빈이 생성되고 빈의 의존성이 주입된 이후 호출된다.
- 애플리케이션 동작 및 데이터 사용
- 소멸전 콜백 - 빈이 소멸되기 직전에 호출된다.
- 스프링 종료
2.@PostConstruct
PostConstruct 어노테이션이란 무엇이며 언제 사용할까요?
- 객체를 초기화 할 때 수행한다.
- 객체가 생성된 후 별도의 초기화 작업을 위해 실행하는 메소드를 선언하여 사용한다.
- @PostConstruct 어노테이션을 설정해놓은 init 메소드는 WAS 가 띄워질 때 실행된다.
@PostConstruct
public void init() {
System.out.println("초기화 메서드 호출")
}
3.@PreDestroy
reDestroy 어노테이션은 무엇이며 언제 사용할까요?
- 마지막으로 소멸하는 단계에서 수행한다.
- 스프링 컨테이너에서 객체를 제거하기 전에 해야할 작업이 있다면 메소드에 이 어노테이션을 적용한다.
- WAS 가 내려가기 전에 실행된다. 정확히는 (AbstractApplicationContext) context.close() 수행하기 직전에 실행된다.
@PreDestroy
public void destroy() {
System.out.println("종료 메서드 호출")
}
두 어노테이션 모두 javax.annotation 패키지를 사용하여 스프링에 종속적인 기술이 아닌 자바 표준입니다.
스프링에서 권장하는 방법으로 어노테이션만 붙이면된다는 점에서 매우 편리하게 사용가능합니다.
4. 참고자료
728x90
'스터디 > Spring' 카테고리의 다른 글
[Spring] 스프링에서 특정 HTTP 응답코드 반환하기 (ResponseEntity, @ResponseStatus) (0) | 2025.01.17 |
---|---|
[Spring] Springboot 버전에 따른 validation 패키지 (org.hibernate.validator.constraints does not exist) (0) | 2024.07.07 |
[Spring] PUT 과 PATCH 사용시 주의할 점 (0) | 2024.07.06 |
[Spring] PUT 과 PATCH 차이 (1) | 2024.07.05 |
[Spring] MultiValueMap 의미와 사용법 (0) | 2024.04.21 |
댓글