- CommandLineRunner는 Spring Boot 애플리케이션이 시작될 때 특정 로직을 실행할 수 있게 해주는 인터페이스
- CommandLineRunner의 주요 목적
- 애플리케이션 초기화 작업
- 데이터베이스 초기화 등 애플리케이션이 시작될 때 필요한 초기 작업을 수행
- 인터페이스를 구현하고 run 메서드를 오버라이드하는 것으로 쉽게 실행
- 다중 실행 기능
- 여러 개의 CommandLineRunner 빈을 정의하면 애플리케이션 시작 시 모두 순차적 실행
- admin 계정 데이터 초기 설정 또는 채용과정중 과제전형 중에 초기데이터 세팅 필요한 경우에 활용 가능
- 예시코드)다중 코드 실행
@Component
public class FirstRunner implements CommandLineRunner {
@Override
public void run(String... args) throws Exception {
System.out.println("FirstRunner 실행");
}
@Component
public class SecondRunner implements CommandLineRunner {
@Override
public void run(String... args) throws Exception {
System.out.println("SecondRunner 실행");
}
@Component
@Order(1)
public class FirstRunner implements CommandLineRunner {
@Override
public void run(String... args) throws Exception {
System.out.println("FirstRunner 실행");
}
}
@Component
@Order(2)
public class SecondRunner implements CommandLineRunner {
@Override
public void run(String... args) throws Exception {
System.out.println("SecondRunner 실행");
}
}