반응형
빈 라이프사이클 관리
인터페이스 기반
InitializingBean 인터페이스 구현한 afterPropertiseSet 메소드
모든 인스턴스의 콜백을 한번에 지정 가능, 스프링과 결합을 해야함빈 생성시 메소드 실행
init-method
빈의 메서드 하나를 지정해 초기화 콜백으로 사용하겠다고 스프링에 설정
빈이 몇개 안되거나 애플리케이션이 스프링과 결합되지 않게 할 때 유용
인자를 받지 못하는 것이 단점
init 메소드는 private 으로 사용 권고애너테이션 사용
@PostConstruct
사용법은 init-method 와 동일하고 @PostConstruct 만 메소드 상단에 추가
메소드명은 아무이름이나 사용 가능
init 메소드는 private 으로 사용 권고
@Bean으로 초기화메소드 사용
@Bean 애너테이션에 initMethod 추가
@Bean(initMethod = "init")
소멸시점
bean 태그에 destroy-method 애트리뷰트 추가하고 메소드 이름 기입
@Bean 을 사용해 메소드 정의
@Bean(destroyMethod="destroy")DisposableBean 인터페이스를 구현한 destroy 메소드
@PreDestroy 애너테이션
BeanNameAware 인터페이스
라이프사이클 콜백 호출전 setBeanName() 메소드를 호출
BeanNameAware 인터페이스를 사용해 생성자등에 로그메시지를 넣기 좋음
반응형
'Spring > spring framework 기본 및 이론' 카테고리의 다른 글
[Spring] 스프링 mapper 등록하기 (0) | 2020.06.02 |
---|---|
[Spring] Mybatis SqlSessionFactory 란 (0) | 2020.06.01 |
[Spring] AOP 포인트컷 표현식 (2) | 2020.05.15 |
[Spring] 스케쥴 설정 (0) | 2020.05.15 |
[Spring] @Resource @Inject @Autowired 차이 (0) | 2020.05.15 |