zoukankan      html  css  js  c++  java
  • Spring Boot Runner启动器

    Runner启动器

    如果你想在Spring Boot启动的时候运行一些特定的代码,你可以实现接口 ApplicationRunner或者 CommandLineRunner,这两个接口实现方式一样,它们都只提供了一个run方法。

    CommandLineRunner:启动获取命令行参数。

    public interface CommandLineRunner {
    
        /**
         * Callback used to run the bean.
         * @param args incoming main method arguments
         * @throws Exception on error
         */
        void run(String... args) throws Exception;
    
    }

    ApplicationRunner:启动获取应用启动的时候参数。

    public interface ApplicationRunner {
    
        /**
         * Callback used to run the bean.
         * @param args incoming application arguments
         * @throws Exception on error
         */
        void run(ApplicationArguments args) throws Exception;
    
    }

    使用方式

    import org.springframework.boot.ApplicationArguments;
    import org.springframework.boot.ApplicationRunner;
    import org.springframework.core.Ordered;
    import org.springframework.core.annotation.Order;
    
    //@Order
    public class ApplicationRun_1 implements ApplicationRunner,Ordered{
        
        @Override
        public int getOrder() {
            return 0;
        }
    
        @Override
        public void run(ApplicationArguments args) throws Exception {
            System.err.println("order:"+getOrder());
        }
    
    }

    或者这样

    @Bean
    public CommandLineRunner init(){
      return (String... args)->{
                
      };
    }

    启动顺序

    如果启动的时候有多个ApplicationRunner和CommandLineRunner,想控制它们的启动顺序,可以实现 org.springframework.core.Ordered接口或者使用 org.springframework.core.annotation.Order注解。

  • 相关阅读:
    attempted to return null from a method with a primitive return type (Double).
    window7 虚拟机安装
    DB 与oracle 批量新增的写法
    oracle 修改表
    备份还原oracle数据库
    oracle数据库的字符集更改
    IMP-00013
    oracle创建用户授权权限
    java中添加定时任务
    程序在运行过程中变量的保存位置与生命周期
  • 原文地址:https://www.cnblogs.com/Joy-Hu/p/12163695.html
Copyright © 2011-2022 走看看