Spring Boot 系统启动任务

导读:本篇文章讲解 Spring Boot 系统启动任务,希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com

🎈博客主页:🌈我的主页🌈
🎈欢迎点赞 👍 收藏 🌟留言 📝 欢迎讨论!👏
🎈本文由 【泠青沼~】 原创,首发于 CSDN🚩🚩🚩
🎈由于博主是在学小白一枚,难免会有错误,有任何问题欢迎评论区留言指出,感激不尽!🌠个人主页



系统任务:在项目启动阶段要做一些数据初始化操作,这些操作有一个共同的特点,只在项目启动时进行,以后都不再执行web基础中的三大组件( Servlet、Filter、Listener ),通过Listener定义一个 ServletContextListener,然后就可以监听到项目启动和销毁,进而做出相应的数据初始化和销毁操作。

🌟 一、CommandLineRunner系统启动任务

🌟🌟 1.1、MyCommandLineRunner类

@Component
//优先级数字越小优先级越高
@Order(100)
public class MyCommandLineRunner implements CommandLineRunner {
    @Override
    public void run(String... args) throws Exception {
        System.out.println("args1="+ Arrays.toString(args));
    }
}

🌟🌟 1.2、MyCommandLineRunner02类

@Component
@Order(99)
public class MyCommandLineRunner02 implements CommandLineRunner {
    @Override
    public void run(String... args) throws Exception {
        System.out.println("args2="+ Arrays.toString(args));
    }
}

在这里插入图片描述
run方法的变量args与启动类中的变量是相同的

🌟🌟 1.3、编辑Spring Boot启动配置

在这里插入图片描述

🌟🌟 1.4、运行结果

在这里插入图片描述

🌟 二、ApplicationRunner系统启动任务

🌟🌟 2.1、ApplicationRunner类

@Component
@Order(98)
public class ApplicationRunner implements org.springframework.boot.ApplicationRunner {
    @Override
    public void run(ApplicationArguments args) throws Exception {
        //获取没有键的参数,获取到的值和CommandRunner的一样
        List<String> NonOptionArgs = args.getNonOptionArgs();
        System.out.println("NonOptionArgs1 = " + NonOptionArgs);
        Set<String> optionNames = args.getOptionNames();
        for (String optionName : optionNames) {
            List<String> optionValues = args.getOptionValues(optionName);
            System.out.println(optionName+"= 1 = " + optionValues);
        }
        //获取命令的所有参数
        String[] sourceArgs = args.getSourceArgs();
        System.out.println("sourceArgs1 = " + sourceArgs);
    }
}

🌟🌟 2.2、ApplicationRunner02类

@Component
@Order(97)
public class ApplicationRunner02 implements org.springframework.boot.ApplicationRunner {
    @Override
    public void run(ApplicationArguments args) throws Exception {
        //获取没有键的参数,获取到的值和CommandRunner的一样
        List<String> NonOptionArgs = args.getNonOptionArgs();
        System.out.println("NonOptionArgs2 = " + NonOptionArgs);
        Set<String> optionNames = args.getOptionNames();
        for (String optionName : optionNames) {
            List<String> optionValues = args.getOptionValues(optionName);
            System.out.println(optionName+"= 2 = " + optionValues);
        }
        //获取命令的所有参数
        String[] sourceArgs = args.getSourceArgs();
        System.out.println("sourceArgs2 = " + Arrays.toString(sourceArgs));
    }
}

🌟🌟 2.3、编辑Spring Boot启动配置

在这里插入图片描述

🌟🌟 2.4、运行结果

在这里插入图片描述


版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/15755.html

(0)
小半的头像小半

相关推荐

极客之音——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!