JAVA/Spring Boot

[ Spring boot ] 서버 실행 시 애플리케이션 초기화 로직 실행 코드 구현

algml0703 2023. 8. 10. 07:28
반응형

서버 실행 시 기본 로직 실행(init)하기

스프링 프레임워크에서 초기화를 위해 제공하는 인터페이스 initializingBean을 사용하였다. 예를 들어 서버에서 기본적으로 관리자 계정을 초기화 설정해두어야 할 필요가 있는 경우 등에 사용할 수 있다. 기본적으로는 아래와 같은 모습으로 사용한다.

- 초기화 로직을 담고 있는 클래스는 InitializingBean을 구현한다. 

- afterPropertiesSet() 메서드를 오버라이드 하여 해당 메서드에 초기화 시킬 로직을 구현하여 준다.

-  initializingBean은 스프링에서 초기화를 위해 제공하는 인터페이스로, 스프링 컨텍스트에 의해 관리되기 때문에 초기화 하려는 로직을 구현한 클래스도 스프링 컨텍스트에 의해 관리될 수 있도록 @Component 등의 어노테이션을 사용해주어야 한다. 참고로 @Service 어노테이션은 비즈니스 로직을 작성하는 클래스임을 알리기 위해 사용하며, @Component 어노테이션을 포함하고 있다.

* 스프링 컨텍스트가 하는 중요한 역할 중 하나는 빈의 생성, 초기화, 소멸 등 빈의 라이프 사이클을 관리하는 것인데 initializingBean은 빈의 초기화 단계에서 관리된다.

출처

https://sgc109.github.io/2020/07/09/spring-running-startup-logic/

반응형