SpringBoot项目启动时处理一些事情
2021-03-25 本文已影响0人
sT丶
- @PostConstruct (需要加上容器注解)
@Component
public class MyCommand {
@PostConstruct
public void handle() {
}
}
- implements CommandLineRunner (需要加上容器注解)
@Component
@Order(100)
public class MyCommandLineRunner1 implements CommandLineRunner {
@Override
public void run(String... args) throws Exception {
}
}
- implements ApplicationRunner (需要加上容器注解)
@Component
@Order(98)
public class MyApplicationRunner1 implements ApplicationRunner {
@Override
public void run(ApplicationArguments args) throws Exception {
List<String> nonOptionArgs = args.getNonOptionArgs();
System.out.println("MyApplicationRunner1>>>"+nonOptionArgs);
Set<String> optionNames = args.getOptionNames();
for (String key : optionNames) {
System.out.println("MyApplicationRunner1>>>"+key + ":" + args.getOptionValues(key));
}
String[] sourceArgs = args.getSourceArgs();
System.out.println("MyApplicationRunner1>>>"+Arrays.toString(sourceArgs));
}
}
- implements ServletContextListener (需要加上容器注解)
public class MyListener implements ServletContextListener {
@Override
public void contextInitialized(ServletContextEvent sce) {
//在这里做数据初始化操作
}
@Override
public void contextDestroyed(ServletContextEvent sce) {
//在这里做数据备份操作
}
}
参考
https://blog.csdn.net/lixiaolian123/article/details/108506373