CommandLineRunner與ApplicationListener


作用:

  spring所有Bean生成之后,加載一些數據和執行一些應用的初始化

使用

@Order(value = 1)  // 多個實現時定義執行順序
@Component
public class ApplicationInit implements CommandLineRunner, ApplicationListener<ApplicationEvent> {
    private static Log logger = LogFactory.getLog(ApplicationInit.class);
    @Autowired
    private ActiveMQTask activeMQTask;
    private boolean openCVLoad;
    public static String openCVXmlPath;
    @Autowired
    private JmsConsumerTask jmsConsumerTask;
    @Autowired
    private DefaultMessageListener messageListener;

    @Override
    public void run(String... args) {
        System.out.println("------------------------ Spring初始化完畢 ------------------------");
        logger.error("---" + Arrays.toString(args) + "---");
        this.applicationStarted();  //spring啟動后執行的自定義任務:開啟activityMQ隊列
    }

    @Override
    public void onApplicationEvent(ApplicationEvent event) {
        if (logger.isDebugEnabled()) {
            logger.debug("event:" + event.getClass().getName());
        }
    }

    private void applicationStarted() {
        System.out.println("> 啟動ActiveMQ[啟動服務]");
        activeMQTask.start();
    }
private void appStop() {
        logger.error("----------------------------Tomcat開始運行關閉----------------------------");
    }

 推薦:CommandLineRunner https://blog.csdn.net/lk142500/article/details/90270592

      ApplicationListener       https://blog.csdn.net/liyantianmin/article/details/81017960


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM