zoukankan      html  css  js  c++  java
  • 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

  • 相关阅读:
    设计模式-抽象工厂模式
    设计模式-工厂方法模式
    设计模式-单例
    java集合-补充HashMapJDK1.8
    java多线程-线程池
    java-阻塞队列
    java多线程-信号量
    java多线程-读写锁
    java多线程-锁
    Ubuntu下编译Poco库
  • 原文地址:https://www.cnblogs.com/draymond/p/12658085.html
Copyright © 2011-2022 走看看