在SpringBoot项目本地调试过程中,若有不需要的自启动方法,则会捣乱输出大堆日志、修改数据等。以下是总结的SpringBoot项目的常见自定动方式:

  • @Scheduled(fixedRate = 5 * 60 * 100)定时的cron时间特别短
  • 继承CommandLineRunnerApplicationRunner的类的run方法
  • @EventListener注解的方法参数是ApplicationReadyEvent
  • implements ApplicationListener<ContextRefreshedEvent>的类的onApplicationEvent(ContextRefreshedEvent event)
  • @PostConstruct 类初始化后执行操作,但是不能保证Spring容器已完全初始化,ApplicationContextAware不保证能取到值,最好用ApplicationRunner或者@EventListener
  • while(true) 空构造器里的持续执行
  • 搜索 QuartzJobDetailFactoryBeanCronTriggerFactoryBeanSimpleTriggerFactoryBeanSchedulerFactoryBean