springboot 执行run
时间: 2024-09-19 14:13:21 浏览: 36
在Spring Boot中,`@SpringBootApplication`(或更早版本的`@EnableAutoConfiguration`+`@ComponentScan`)不仅仅是一个标记,它还包含了`SpringBootRunnner`的实现,这意味着当你启动一个Spring Boot应用程序时,它会自动注册一个实现了`SpringApplicationRunnner`接口的类,通常是你的主类或者包含`@SpringBootApplication`注解的类。
如果你在主类上标注了`@SpringBootApplication`或实现了`ApplicationRunner`或`CommandLineRunner`接口,并且有一个名为`run`的方法(如`ApplicationRunner`的`run()`或`CommandLineRunner`的`run(String... args)`),Spring Boot会在程序启动后,执行这些类的`run`方法。这个方法通常用于执行一些一次性的工作,如数据初始化、日志配置等。
例如:
```java
@SpringBootApplication
public class MyApp implements ApplicationRunner {
@Override
public void run(ApplicationArguments args) throws Exception {
System.out.println("Spring Boot application starting up...");
}
public static void main(String[] args) {
SpringApplication.run(MyApp.class, args);
}
}
```
在这段代码中,`MyApp`类的`run`方法会在Spring Boot启动后立刻被调用。
阅读全文