SpringBoot启动时--如何自动运行代码呢?
下文笔者讲述SpringBoot启动时-自动运行代码的方法及示例分享,如下所示
SpringBoot自动运行代码的实现思路
方式1: 自身启动时加载(static ,构造方法) 方式2: Spring启动时加载例:
static代码块 static静态代码块,在类加载的时候即自动执行。 构造方法 在对象初始化时执行。执行顺序在static静态代码块之后。Spring启动时加载方式
@PostConstruct注解 PostConstruct注解使用在方法上 这个方法在对象依赖注入初始化之后执行。 ApplicationRunner和commandlinerunner SpringBoot提供了两个接口来实现Spring容器启动完成后执行的功能 两个接口分别为CommandLineRunner和ApplicationRunner。 这两个接口需要实现一个run方法 将代码在run中实现即可 这两个接口功能基本一致 其区别在于run方法的入参 ApplicationRunner的run方法入参为ApplicationArguments CommandLineRunner的run方法入参为String数组例:
@Component public class TestPostConstruct { static { System.out.println("static"); } public TestPostConstruct() { System.out.println("constructer"); } @PostConstruct public void init() { System.out.println("PostConstruct"); } } @Component @Order(1) public class TestApplicationRunner implements ApplicationRunner{ @Override public void run(ApplicationArguments applicationArguments) throws Exception { System.out.println("order1:TestApplicationRunner"); } } @Component @Order(2) public class TestCommandLineRunner implements CommandLineRunner { @Override public void run(String... strings) throws Exception { System.out.println("order2:TestCommandLineRunner"); } }
版权声明
本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。