1、SpringBoot启动时立即执行的方法
在SpringBoot的启动中需要实现 CommandLineRunner 接口,重新 run 方法。示例如下:
@SpringBootApplication
@Slf4j
public class TestApplication implements CommandLineRunner {
public static void main(String[] args) {
SpringApplication.run(TestApplication.class, args);
}
@Override
public void run(String... args) throws Exception {
log.info("启动方法!!!!!!!!");
}
}
图中我们可以看到,当启动springboot时,run方法已经启动了
2、SpringBoot启动时执行定时任务
首先我们需要在启动类上面添加注解 @EnableScheduling 然后添加一个定时任务即可。示例如下
@SpringBootApplication
@Slf4j
@EnableScheduling
public class TestApplication implements CommandLineRunner {
public static void main(String[] args) {
SpringApplication.run(TestApplication.class, args);
}
@Override
public void run(String... args) throws Exception {
log.info("启动方法!!!!!!!!");
}
@Scheduled(cron = "0/3 * * * * ? ")
public void scheduled() {
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String date = simpleDateFormat.format(new Date());
log.info("定时任务:" + date);
}
}
从图中我们可以看出,设置的每三秒执行一次的定时任务也已经启动了。