애플리케이션 시작 시점에 필요한 연결을 미리 해두고, 애플리케이션 종료 시점에 연결을 모두 종료하는 작업을 진행하려면, 객체의 초기화와 종료 작업이 필요하다.
크게 3가지 방식이 있다.
1. 인터페이스( InitializingBean, DisposableBean )
2. 설정 정보에 초기화 메서드, 종료 메서드 지정
@Bean(initMethod = "메소드명", destroyMethod = "메소드명")
참고: 2번방법은 외부라이브러리에도 적용이 가능하다. 특히 destroy는 메소드명 추론기능이 있다. close, shutdown을 자동으로 호출해준다.
참고: 3번에 명시한 어노테이션은 spring이 제공이 아닌 javax에서 제공하는 자바 표준이다. 스프링 컨테이너가 아니어도 동작한다.
현재는 어노테이션 방식인 3번방식으로 사용한다. 스프링에서도 이 방법을 권장한다고 함.