취미로 음악을 하는 개발자

[Spring] 생명주기 (Life Cycle) 본문

공대인/Spring[Boot]

[Spring] 생명주기 (Life Cycle)

영월특별시 2019. 5. 23. 00:03
728x90

생명주기

: 언제 생성되고 언제 소멸되는가?

-> Spring 프레임워크에서 지원해주는 인터페이스 구현하는 방법과 bean 객체에 속성을 추가하는 방법이 있다.

- DB인증 등의 어떤 절차의 인증이 필요할 때 사용


1) 스프링 컨테이너 생명주기

: 컨테이너 생성 시점은 bean 객체 생성 시점과 같다고 볼 수 있다.

생성 : new 객체로 컨테이너 생성, 소멸 : 컨테이너.close() 해주는 시점, 이 때 컨테이너 안에 있던 bean 객체도 같이 소멸


2) bean 객체 생명주기

: 스프링 컨테이너와 같다.



// 생명 주기 사용 방법


1) 인터페이스 활용


Bean 객체 생성 시점이나 소멸 시점에 어떤 작업을 하고싶을 때 InitializingBeanDisposableBean 인터페이스를 쓸 수 있다.

코드를 구현할 때 implements 키워드로 인터페이스를 불러와서 afterPropertiesSet이나 destroy 메소드를 직접 구현하면 된다.



2) method 속성 활용


1)의 인터페이스와 같은 기능을 하는 메소드로 init-method, destroy-method가 있다.

속성 값을 설정해주고 속성과 같은 이름을 가진 함수를 만들면 그 기능이 적용된다.


Comments