Spring Boot 프로젝트 가 시 작 될 때 특정 방법 을 실행 합 니 다.
이 두 가지 방법 은 프로젝트 가 시 작 될 때 즉시 어떤 방법 을 실행 하 는 것 을 만족 시 키 기 위해 제공 하 는 것 이다.우 리 는 애플 리 케 이 션 러 너 와 CommandLine Runner 를 실현 함으로써 이 루어 질 수 있다.그들 은 모두 SpringApplication 이 실 행 된 후에 실 행 된 것 이다.
CommandLine Runner 인 터 페 이 스 는 문자열 배열 의 명령 행 인 자 를 받 을 수 있 습 니 다.ApplicationRunner 는 ApplicationArguments 를 사용 하여 인 자 를 받 을 수 있 습 니 다.후자 가 더 강 한 것 같 습 니 다.
CommandLineRunner 먼저 보기:
package com.springboot.study;
import org.springframework.boot.CommandLineRunner;
import org.springframework.stereotype.Component;
/**
* Created by pangkunkun on 2017/9/3.
*/
@Component
public class MyCommandLineRunner implements CommandLineRunner{
@Override
public void run(String... var1) throws Exception{
System.out.println("This will be execute when the project was started!");
}
}
ApplicationRunner :
package com.springboot.study;
import org.springframework.boot.ApplicationArguments;
import org.springframework.boot.ApplicationRunner;
import org.springframework.stereotype.Component;
/**
* Created by pangkunkun on 2017/9/3.
*/
@Component
public class MyApplicationRunner implements ApplicationRunner {
@Override
public void run(ApplicationArguments var1) throws Exception{
System.out.println("MyApplicationRunner class will be execute when the project was started!");
}
}
이 두 가지 방식 의 실현 은 모두 매우 간단 하 니,직접 상응하는 인 터 페 이 스 를 실현 하면 된다.클래스 에@Component 주 해 를 추가 하 는 것 을 기억 하 세 요.시작 방법 이 실 행 될 순 서 를 지정 하려 면 org.spring from work.core.Ordered 인 터 페 이 스 를 실현 하거나 org.spring from work.core.annotation.Order 주 해 를 사용 하여 이 루어 질 수 있 습 니 다.
여기 서 우 리 는 애플 리 케 이 션 러 너 를 예 로 들 어 각각 실현 한다.
Ordered 인터페이스:
package com.springboot.study;
import org.springframework.boot.ApplicationArguments;
import org.springframework.boot.ApplicationRunner;
import org.springframework.core.Ordered;
import org.springframework.stereotype.Component;
/**
* Created by pangkunkun on 2017/9/3.
*/
@Component
public class MyApplicationRunner implements ApplicationRunner,Ordered{
@Override
public int getOrder(){
return 1;//
}
@Override
public void run(ApplicationArguments var1) throws Exception{
System.out.println("MyApplicationRunner1!");
}
}
Order 주해 실현 방식:
package com.springboot.study;
import org.springframework.boot.ApplicationArguments;
import org.springframework.boot.ApplicationRunner;
import org.springframework.core.Ordered;
import org.springframework.core.annotation.Order;
import org.springframework.stereotype.Component;
/**
* Created by pangkunkun on 2017/9/3.
* value
*/
@Component
@Order(value = 1)
public class MyApplicationRunner implements ApplicationRunner{
@Override
public void run(ApplicationArguments var1) throws Exception{
System.out.println("MyApplicationRunner1!");
}
}
여 기 는 다른 비교 방법 을 열거 하지 않 고 스스로 집행 하면 된다.이상 이 바로 본 고의 모든 내용 입 니 다.여러분 의 학습 에 도움 이 되 고 저 희 를 많이 응원 해 주 셨 으 면 좋 겠 습 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
[MeU] Hashtag 기능 개발➡️ 기존 Tag 테이블에 존재하지 않는 해시태그라면 Tag , tagPostMapping 테이블에 모두 추가 ➡️ 기존에 존재하는 해시태그라면, tagPostMapping 테이블에만 추가 이후에 개발할 태그 기반 ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.