ApplicationRunner
인터페이스도 CommandLineRunner
인터페이스와 마찬가지로 구동 시점에 run()
메소드를 실행시키지만 다른 타입의 인자를 받습니다.
단순 인자의 스트링 배열을 포함한 추상화한 ApplicationArguments
타입의 객체가 대신 run()
메소드의 인자로 넘어옵니다.
@Component
public class Server implements ApplicationRunner {
@Override
public void run(ApplicationArguments args) throws Exception {
logger.info("=== Server Start ==== ");
start(); // 실행할 서비스
}
}
방법이 3가지가 있다고 보통 나오는데 나는 ApplicationRunner
를 이용하였다
참고자료
https://atoz-develop.tistory.com/entry/Spring-Boot-ApplicationRunner-%EB%93%B1%EB%A1%9D-%EB%B0%A9%EB%B2%95-%EC%A0%95%EB%A6%AC
https://velog.io/@wonizizi99/Spring-%EC%8A%A4%ED%94%84%EB%A7%81-%EB%B6%80%ED%8A%B8-%EA%B5%AC%EB%8F%99-%EC%8B%9C%EC%A0%90%EC%97%90-%ED%8A%B9%EC%A0%95-%EC%BD%94%EB%93%9C-%EC%8B%A4%ED%96%89