springboot启动后初始化的代码
时间: 2023-09-26 09:02:55 浏览: 94
详解SpringBoot程序启动时执行初始化代码
Spring Boot的启动后初始化代码可以通过实现ApplicationRunner和CommandLineRunner接口来实现。这两个接口都提供了run方法,用于在Spring Boot应用启动完成后执行自定义的初始化代码。
1. 实现ApplicationRunner接口:
ApplicationRunner接口的run方法在Spring Boot启动完成后执行,并且可以访问应用的ApplicationContext。可以通过在实现类上添加@Component注解将其识别为Spring组件,或者通过@Configuration注解将其作为配置类加载。
```java
@Component
public class CustomApplicationRunner implements ApplicationRunner {
@Autowired
private ApplicationContext applicationContext;
@Override
public void run(ApplicationArguments args) throws Exception {
// 执行初始化代码
// 可以通过applicationContext.getBean()获取其他Spring Bean,进行各种初始化操作
}
}
```
2. 实现CommandLineRunner接口:
CommandLineRunner接口的run方法也在Spring Boot启动完成后执行,但是它接收的参数是程序启动时的命令行参数。同样可以通过在实现类上添加@Component注解或@Configuration注解来加载。
```java
@Component
public class CustomCommandLineRunner implements CommandLineRunner {
@Override
public void run(String... args) throws Exception {
// 执行初始化代码
// 可以通过args参数获取命令行参数,进行各种初始化操作
}
}
```
以上是Spring Boot启动后初始化的代码实现方式,可以根据具体需求选择ApplicationRunner接口或CommandLineRunner接口来编写初始化代码,并在应用启动后执行。
阅读全文